本文共 767 字,大约阅读时间需要 2 分钟。
1.这是在一次计算人员的执业年限,无意间找到的java自带的日期计算方法。
需求是这样的,就是一个人员有一个首次执业时间,要求算出距今执业了几年,这里就涉及到年月日的计算,自己写也是可以计算写出来,但是我就想 java没有自带的方法去计算日期的吗? 终于皇天不负有心人,上代码↓//获取首次执业时间Date firstLicenseDate = entity.getProperty("firstLicenseDate", Date.class,null);//得到当前时区,当前时间LocalDate now=LocalDate.now()//获取当前时区的ZoneId,用于Instant和LocalDate的转换ZoneId zoneId = ZoneId.systemDefault();//把Date的firstLicenseDate转换成LocalDate类型LocalDate localDate = firstLicenseDate.toInstant().atZone(zoneId).toLocalDate();//获取localDate到now日期的差值Period between = Period.between(localDate, now);/**between.getYears()获取距今相差的年数,between.getMonths()获取localDate的月到now月相差的月数,between.getDays()()获取localDate的月到now月相差的天数。*/System.out.print("相差:" + between.getYears() + "年" + between.getMonths() + "月" + between.getDays() + "日" + "");
转载地址:http://setgn.baihongyu.com/