文章目录
- Date类
- 常用方法
- 代码演示
- SimpleDateFormat
- 常用方法
- 代码演示
- 时间格式常见符号
- SimpleDateFormat解析字符串为Date对象
- 代码
- 总结
- 案例:秒杀活动:
黑马学习笔记
这些方法在API文档都能查到
Date类
常用方法
代码演示
package Time;
import java.util.Date;
/**
* @Author: ggdpzhk
* @CreateTime: 2024-08-26
*/
public class Test {
public static void main(String[] args) {
Date date = new Date();
System.out.println(date);
//从1990年1.1到现在的毫秒值
long time = date.getTime();
System.out.println(time);
time += 2*1000;
//把时间毫秒值转换为Date对象
Date date1 = new Date(time);
System.out.println(date1);
//set方法修改
date.setTime(time);
System.out.println(date);
}
}
SimpleDateFormat
常用方法
代码演示
package Time;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* @Author: ggdpzhk
* @CreateTime: 2024-08-26
*/
public class SimpleDateFormatTest {
public static void main(String[] args) {
//准备一个时间对象 和 毫秒值 供使用
Date date = new Date();
System.out.println(date);
long time = date.getTime();
//利用 SimpleDateFormat 格式化时间,传date对象 或者是 毫秒值 都可以
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss EEE a");//格式化 EEE 是周几 a 是上午还是下午
String s = simpleDateFormat.format(date);
System.out.println(s);
String s1 = simpleDateFormat.format(time);
System.out.println(s1);
}
}
时间格式常见符号
SimpleDateFormat解析字符串为Date对象
代码
package Time;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* @Author: ggdpzhk
* @CreateTime: 2024-08-26
*/
public class SimpleDateFormatTest {
public static void main(String[] args) throws ParseException {
//字符串转Date对象
String dateStr = "2025-08-26 09:00:00 ";
SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//注意格式要与字符串格式一致
Date date1 = simpleDateFormat1.parse(dateStr);
System.out.println(date1);
}
}
总结
- SimpleDateFormat代表什么,有什么作用?
- SimpleDateFormat的对象如何创建?
- SimpleDateFormat格式化,以及解析时间的方法有哪些?
案例:秒杀活动:
package Time;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* @Author: ggdpzhk
* @CreateTime: 2024-08-26
秒杀活动
*/
public class Test3 {
public static void main(String[] args) throws ParseException {
/*这段Java代码首先将时间表示为String类型,
是因为时间数据最初以文本形式给出,格式为 "年-月-日 时:分:秒"。
使用String便于存储和展示这种格式化的时间。*/
String startTime = "2024-08-26 00:00:00";
String endTime = "2024-08-26 00:10:00";
String xj = "2024-08-26 00:01:08";
String xp = "2024-08-26 00:10:08";
//把字符串接受为日期对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date startDate = sdf.parse(startTime);
Date endDate = sdf.parse(endTime);
Date xjDate = sdf.parse(xj);
Date xpDate = sdf.parse(xp);
//把 date对象转换为时间毫米值进行 比较计算
long startTimeMillis = startDate.getTime();
long endTimeMillis = endDate.getTime();
long xjTimeMillis = xjDate.getTime();
long xpTimeMillis = xpDate.getTime();
if (xjTimeMillis >= startTimeMillis && xjTimeMillis <= endTimeMillis){
System.out.println("恭喜!小贾抢到啦!!");
} else{
System.out.println("很遗憾,小贾没有抢到!!");
}
if (xpTimeMillis >= startTimeMillis && xpTimeMillis <= endTimeMillis) {
System.out.println("恭喜!小皮抢到啦!!");
}else{
System.out.println("很遗憾,小皮没有抢到!!");
}
}
}