BigDecimal用于解决浮点数运算时,出现结果失真的问题
传统时间:Date日期类
//1、创建一个Date的对象,代表系统当前的时间信息 Date d=new Date(); System.out.println(d); //2、拿到时间毫秒值 long time=d.getTime(); //3、把时间毫秒值转换成日期对象:2s后时间是多少 time+=2*1000; Date d2=new Date(time); //4、直接把日期对象的时间通过setTime方法进行修改 Date d3=new Date(); d3.setTime(time);
传统时间:simpleDateFormate
//目标:掌握SimpleDateFormat的使用 //1.准备一些时间 Date d=new Date(); long time=d.getTime(); //2.格式化日期对象和时间毫秒值 SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss EEE a"); String rs=sdf.format(d);
//掌握SimpleDateFormat解析字符串时间成为日期对象 String dateStr="2022-12-12 12:12:11"; //创建简单日期格式化对象,指定的时间格式必须与被解析的时间格式一样 SimpleDateFormat sdf2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date d2=sdf2.parse(dateStr);
秒杀案例
//目标:完成秒杀案例 //1、把开始时间、结束时间、小贾下单时间、小皮下单时间拿到程序中 String start = ""; String end = ""; String xj = ""; String xp = ""; //2、把字符串的时间解析成日期对象 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); Date startDt = sdf.parse(start); Date endDt = sdf.parse(end); Date xjDt = sdf.parse(xj); Date xpDt = sdf.parse(xp); //3开始判断小皮和小贾是否秒杀成功 //把日期对象转换成时间毫秒值来判断 long startTime = startDt.getTime(); long endTime = endDt.getTime(); long xjTime = xjDt.getTime(); long xpTime = xpDt.getTime(); if (xjTime >= startTime && xjTime <= endTime){ System.out.println("小贾秒杀成功了"); }else{ System.out.println("小贾秒杀失败了"); }标签:常用,Java,getTime,SimpleDateFormat,sdf,API,时间,Date,new From: https://blog.csdn.net/weixin_48005967/article/details/137184489