如何在Java 8中愉快地处理日期和时间import java.time.LocalDate;import java.time.LocalDateTime;import java.time.LocalTime;import java.time.Month;import java.time.temporal.ChronoUnit;public class Java8TimeDemo {//LocalDate和腊歼LocalTime和String一渗或样,是final修饰的不变类型,线程安全且不能修改。public static void main(String[] args) {// 取当前日期:LocalDate today = LocalDate.now(); System.out.println(today);// 根据年月日取日期,月份从1开始到12 而不是java.util.date里的月份从0到11:LocalDate birthday = LocalDate.of(2015, 10, 27);long days = ChronoUnit.DAYS.between(birthday,today);if(birthday.isBefore(today)){System.out.println("生日已过"+days+"天");}else{System.out.println("还差"+Math.abs(days)+"天过生日");}int year = today.getYear();//年System.out.println(year);int month = today.getMonthValue();//月System.out.println(month);int day = today.getDayOfMonth();//日System.out.println(day);int dw = today.getDayOfWeek().getValue();//星期几System.out.println("星期"+dw);int dd = today.lengthOfMonth();//本月多少天System.out.println(dd);boolean leapYear = today.isLeapYear();//是否是润年System.out.println(leapYear?"是闰年":"不是闰年");//LocalDate的实例。由于它是不可变类型,每次操作都会产生一个新的实例,而原有实例不收任何影响。LocalDate date = LocalDate.of(1998, Month.NOVEMBER, 01);date = date.withYear(2200); //设置年System.out.println(date);date = date.plusMonths(2); //增加2个月 plusSystem.out.println(date);date = date.minusDays(1);//减去1天System.out.println(date);LocalTime now = LocalTime.now(); // 包含毫秒数System.out.println(now);now = LocalTime.now().withNano(0); //清除毫秒数:System.out.println(now);LocalDateTime dateTime = LocalDateTime.now();System.out.println(dateTime);}}
标签:Java,愉快,日期