有了LocalDate和LocalTime,你还在傻傻的使用Calendar或Date来计算日期么?

有了LocalDate和LocalTime,你还在傻傻的使用Calendar或Date来计算日期么?


在jdk1.7以前,我们只能使用Date、Calendar来处理日期类的需求,在jkd1.8以后我们多了一个选择,那就是LocalDate和LocalTime。不得不说新引入的两个api太方便实用了。

下面我来介绍一下这两个类中常用方法的用法。

LocalDate

方法说明
LocalDate.now()获取当前日期
LocalDate.of(int year, int month, int dayOfMonth)根据参数设置日期,参数分别为年,月,日
localDate.getDayOfMonth()获取当前日期所在月份的第几天
localDate.getDayOfWeek()获取当前日期所在周的第几天
localDate.getDayOfYear()获取当前日期所在年份的第几天
localDate.getMonth()获取当前日期的月份的英文名称
localDate.getMonthValue()获取当前日期的月份数值
localDate.lengthOfMonth()获取当前日期所在月份有几天
localDate.lengthOfYear()获取当前日期所在年份有几天
localDate.isLeapYear()获取当前日期是否属于闰年
localDate.withDayOfMonth(int dayOfMonth)将日期替换为当月的第几天
localDate.withDayOfYear(int dayOfYear)将日期替换为当年的第几天
localDate.withMonth(int month)替换月份
localDate.withYear(int year)替换年份
localDate.minusDays(long days)将当前日期减去n天
localDate.minusWeeks(long weeks)将当前日期减去n周
localDate.minusMonths(long months)将当前日期减去n月
localDate.minusYears(long years)将当前日期减去n年
localDate.plusDays(long days)当前日期加n天
localDate.plusWeeks(long weeks)当前日期加n周
localDate.plusMonths(long months)当前日期加n月
localDate.plusYears(long years)当前日期加n年

LocalTime

方法说明
LocalTime.now()获取当前时间
LocalTime.of(int hour, int minute)根据参数设置时间 时 分
LocalTime.of(int hour, int minute, int second)根据参数设置时间 时 分 秒
localTime.getHour()获取当前小时
localTime.getMinute()获取当前分钟
localTime.getSecond()获取当前秒
localTime.withHour(int hour)修改小时
localTime.withMinute(int minute)修改分
localTime.withSecond(int second)修改秒
localTime.minusHours(long hours)减去n小时
localTime.minusMinutes(long minutes)减去n分钟
localTime.minusSeconds(long seconds)减去n秒
localTime.plusHours(long hours)增加n小时
localTime.plusMinutes(long minutes)增加n分钟
localTime.plusSeconds(long seconds)增加n秒

日期+时间组合

由以上两个方法表我们可以看出 LocalDate主要是用来操作日期,LocalTime用来操作时间的。
如果我们需要同时操作时间和日期的时候该怎么办呢?
LocalDate.atTime()方法提供了我们日期+时间的操作api。
如我们获取当前日期+时间

        LocalDateTime date = LocalDateTime.now();
        System.out.println(date);
        LocalDateTime date1 = LocalDate.of(2019, 9, 27).atTime(7, 45, 50);
        System.out.println(date1);
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值