1.将时间对象格式化输出
//1.时间对象
Date d=new Date();
System.out.println(d);
//2.格式化时间
//EEE指星期 a输出上下午
SimpleDateFormat sdk=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss EEE a");
//3.开始格式化日期对象成喜欢的字符串形式
String s=sdk.format(d);
System.out.println(s);
System.out.println("----------------");
//4.格式化时间毫秒值
long time=System.currentTimeMillis();
String s1=sdk.format(time);
System.out.println(s1);
结果
Fri Sep 30 15:51:17 CST 2022
2022年09月30日 15:51:17 周五 下午
----------------
2022年09月30日 15:51:17 周五 下午
2.将字符串解析成时间对象
public static void main(String[] args) throws ParseException {
//1.把字符串时间拿到程序里用
String dateStr="2021年08月05日 11:11:11";
//2.把字符串解析到日期对象,形式必须与被解析时间格式完全一样,否则运行时会解析报错
SimpleDateFormat sdk=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
//throws ParseException 抛出异常
Date d=sdk.parse(dateStr);
//3.往后走2天14小时5分06秒
long time=d.getTime()+(2*24*60*60 + 14*60 + 5*60 + 6)*1000;
//4.格式化这个时间的时间毫秒值
System.out.println(sdk.format(time));
}
结果
2021年08月07日 11:30:17
3.时间处理样例
public static void main(String[] args) throws ParseException {
//1、开始和结束时间
String startTime = "2021-11-11 00:00:00";String endTime = "2021-11-11 00:10:00";
// 2、小贾小皮
String xiaoJia = "2021-11-11 00:03:47";
String xiaoPi ="2021-11-11 00:10:11";
//3、解析他们的时间
SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss");
Date d1 = sdf.parse(startTime);
Date d2 = sdf.parse(endTime);
Date d3 = sdf.parse(xiaoJia);
Date d4 = sdf.parse(xiaoPi);
//after,before判断时间前后
if(d3.after(d1) && d3.before(d2)){
System.out.println("小贾秒杀成功,可以发货了! ");}else {
System.out.println("小贾秒杀失败! ");
}
if(d4.after(d1) && d4.before(d2)){
System.out.println("小皮秒杀成功,可以发货了! ");}else {
System.out.println("小皮秒杀失败! ");
}
}
结果
小贾秒杀成功,可以发货了!
小皮秒杀失败!