localDate的使用

package date;


import java.time.DayOfWeek;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.time.temporal.TemporalAdjusters;




public class LocalDateTest {


    /**
     * 
     * @param args
     */
    public static void main(String[] args) {


        //当前日期
        LocalDate localDate = LocalDate.now();


        LocalDate localDate1 = LocalDate.of(2017, 11, 10);


        LocalDate localDate2 = LocalDate.of(2017, 11, 10);
        //当前的年
        System.out.println(localDate.getYear());
        //当前的月份
        System.out.println(localDate.getMonth());
        //当前的月份
        System.out.println(localDate.getMonthValue());
        //当前日期是星期几
        System.out.println(localDate.getDayOfWeek());
        //当前的天数在一年中是第几天
        System.out.println(localDate.getDayOfYear());
        //当前日期是这个月的第几天
        System.out.println(localDate.getDayOfMonth());
        //每个月的天数
        System.out.println(localDate.lengthOfMonth());
        //这一年有多少天
        System.out.println(localDate.lengthOfYear());
        //是否是闰年
        System.out.println(localDate.isLeapYear());
        //当前日期减一个月
        System.out.println(localDate.minusMonths(1));
        //当前日期减一年
        System.out.println(localDate.minusYears(1));
        //当前日期减一个星期
        System.out.println(localDate.minusWeeks(1));
        System.out.println(localDate.MIN);


        System.out.println(localDate.MAX);
        //时间的判断判断先后
        System.out.println(localDate.isBefore(localDate.minusMonths(1)));
        System.out.println(localDate.isBefore(localDate.plusMonths(1)));
        System.out.println(localDate.isAfter(localDate1));


        //修改指定本地日期,获取新的对象,在原来的对象上指定时间修改
        LocalDate localdate1 = localDate.withDayOfMonth(1);
        LocalDate localdate2 = localDate.withDayOfYear(1);
        LocalDate localdate3 = localDate.withMonth(1);
        LocalDate localdate4 = localDate.withYear(2018);


        System.out.println(localdate1);
        System.out.println(localdate2);
        System.out.println(localdate3);
        System.out.println(localdate4);


        LocalDate today = LocalDate.now();
        // 取本月第1天:
        LocalDate firstDayOfThisMonth = today.with(TemporalAdjusters.firstDayOfMonth());
        // 取本月第2天:
        LocalDate secondDayOfThisMonth = today.withDayOfMonth(2);
        // 取本月最后一天,再也不用计算是28,29,30还是31:
        LocalDate lastDayOfThisMonth = today.with(TemporalAdjusters.lastDayOfMonth());
        // 取下一天:
        LocalDate firstDayOf2015 = lastDayOfThisMonth.plusDays(1); 
        // 取2017年1月第一个周一
        LocalDate firstMondayOf2015 = LocalDate.parse("2017-01-01").with(
            TemporalAdjusters.firstInMonth(DayOfWeek.MONDAY)); 
        //比较二个时间是否相等
        System.out.println(localDate1.equals(localDate2));
        System.out.println(localDate1.equals(localdate2));


        //比较二个时间的大小,返回是年,月,日的天数的差值
        System.out.println(localDate1.compareTo(localDate2));
        System.out.println(localDate1.compareTo(localdate2));


        //二个日期相差的天数,年,月,等
        long days = localdate2.until(localdate4, ChronoUnit.DAYS);
        long hour = localdate2.until(localdate4, ChronoUnit.YEARS);
        System.out.println(days);
        System.out.println(hour);


    }


}
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值