现在java更新的版本还是比较多,现在生产上大家一般都是用的java8,但是在项目的代码里面,还是会经常看到大家有很多java7及以前的一些写法,今天这篇我们就来介绍下java8里面的日期类型如何编写。
备注:在这里推荐大家尽可能的使用java8的语法,因为java8的语法从简洁性和代码量相对来说都比较少,可以更快的完成项目里的编码要求。
一、java如何获取现在的日期
在以前的写法里面,大家经常使用new date() 在java8里面建议大家使用 LocalDate now = LocalDate.now(); 这时候输出的now是: 2022-07-27
二、java8如何获取对应的年月日的信息
LocalDate now = LocalDate.now(); int year = now.getYear(); int month = now.getMonthValue(); int day = now.getDayOfMonth(); 然后我们输出对应的year或者month或者day即可。
三、java8中如何创建一个特定的日期,例如:创建2020-07-01
LocalDate date = LocalDate.of(2020, 07, 01); System.out.println(date); 这时候输出的值就是:2020-07-01
四、java8中如何判断两个日期是否是一样的
LocalDate now = LocalDate.now(); LocalDate date = LocalDate.of(2022, 07, 27); if (date.equals(now)) { System.out.println("当前两个日期是同一天"); }else{ System.out.println("当前两个日期不是同一天"); } 直接使用equals进行比较即可。
五、java8中如何判断当前日期是哪一天,例如:判断下今天是不是7月27日
LocalDate now = LocalDate.now(); MonthDay day = MonthDay.of(7, 27); MonthDay current = MonthDay.from(now); if (currentMonthDay.equals(day)) { System.out.println("今天是7月27日"); } else { System.out.println("今天不是7月27日"); }
六、java8中如何获取当前时间
LocalTime localTime = LocalTime.now(); System.out.println(localTime); 这里打印的结果是:14:29:03.308 可以看到这里是获取当前的时间,没有日期,所以像这种可以表达出现在是几点几份几秒。
七、在现有的时间上增加小时/分钟/秒
LocalTime now = LocalTime.now(); System.out.println(now); now.plusHours(2);// 增加2小时 now.plusMinutes(2);// 增加2分钟 now.plusSeconds(2);// 增加2秒 now.plus(1, ChronoUnit.WEEKS);//增加一周,这里就比较灵活,可以增加天,周,月,小时,分钟,秒等
八、java8 如何判断一个时间比另外一个时间早或者晚
LocalDate day = LocalDate.of(2018,6,20); LocalDate now = LocalDate.now(); if(day.isAfter(now)){ //TODO } if(day.isBefore(now)){ //TODO }
九、java8中计算两个日期相差的月数
LocalDate date = LocalDate.of(2019, 3, 20); LocalDate now = LocalDate.now(); Period period = Period.between(now, date); System.out.println("相差" + period.toTotalMonths() + "月"); System.out.println("相差" + (now.toEpochDay() - date.toEpochDay()) + "天");
十、java8中获取完整的日期和时间
Instant timestamp = Instant.now(); System.out.println(timestamp); 这里相当于new date(),输出为:2022-07-27T06:44:42.321Z
十一、java8中如何解析日期
String dateStr= "2018年06月20日"; DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日"); LocalDate date= LocalDate.parse(dateStr, formatter);
十一、java8中如何将日期转换为字符串
LocalDateTime now = LocalDateTime.now(); DateTimeFormatter format = DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH:mm:ss"); String nowStr = now .format(format); System.out.println(nowStr);
还没有评论,来说两句吧...