-
1.8以前
-
Date Calendar SimpleDateFormat
1.8以后
:LocalDate LocalTime LocaLDateTime Instant DateTimeFormatter
date 构建date对象 输出date得到时间(系统格式时间):
1.引用util.date类
2.Date xx = new Date();
date 获取时间戳
Date xx = new Date();
//获取date时间的时间戳 从1970年0时0分0秒到现在的秒数
System.out.println(xx.getTime());
//也可以通过system类获取
System.out.println(System.currentTimeMillis());
date 获取当前时间的纳秒数
不是时间戳,也不是1970年开始的 跟电脑CPU JVM相关的一个纳秒数
System.out.println(System.nanoTime());
SimpleDateFormat 格式化时间:
1. SimpleDateFormat xx = new SimpleDateFormat 格式化时间的格式(“yyyyMM-dd HH:mm:ss”)
HH:24小时制 hh:12小时制
2.用String来接格式化的时间 String nn = xx.format(date) 用到关键字format
Calendar 属于单例模式 不能使用new关键字
1.获取当前时间
Calendar xx = Calendar.getInstance();
syso(xx.getTime()); // 输出当前时间(系统格式)
syso(xx.get(Calendar.YEAR)); //输出当前时间的年份
syso(xx.get(Calendar.MONTH)+1); //输出当前时间的月份 因为国外有0月 所以我们要加1
…
2. 自定义时间
xx.set(xxxx,xx,xx);
syso(xx.getTime()); 注意! 自定义生成的时间会给定义的月份+1来符合中国习惯
LocalDate
1.获取当前日期 ,不能用new,要使用now
LocalDate xx = LocalDate.now();
syso(xx); // 输出当前日期 格式为xxxx-xx-xx
2.使用 DateTimeFormatter 自定义日期格式
String nn = xx.format(DateTimeFormatter.ofPattern(“yyyy年MM月dd日”));
syso(nn);
LocalTime
获取当前时间 xx:xx:xx.xxx
LocalTime xx = LocalTime.now();
syso(xx);
LocalDateTime
获取当前日期和时间 输出的格式为 xxxx-xx-xxTxx:xx:xx.xxx
LocalDateTime xx = LocalDateTime.now();
syso(xx);
Instant
获取UTC标准时间(伦敦时间)格式为xxxx-xx-xxTxx:xx:xx.xxxZ 比中国少8小时
Instant xx = Instant.now();
syso(xx);