关于时间处理,你可以试试java8特供:LocalDateTime,更加简单

LocalDateTime是弥补Calendar的缺点的
最好使用 LocalDateTime ,不使用 Calendar
官方解释为:simple beautiful strong immutable thread-safe
翻译:简单、漂亮、坚固、不可变的,线安全

Java的Date,Calendar类型使用起来并不是很方便,而且Date类(据说)有着线程不安全等诸多弊端。同时若不进行封装,会在每次使用时特别麻烦。于是Java8推出了线程安全、简易、高可靠的时间包。并且数据库中也支持LocalDateTime类型,在数据存储时候使时间变得简单。Java8这次新推出的包括三个相关的时间类型:LocalDateTime年月日十分秒;LocalDate日期;LocalTime时间;三个包的方法都差不多。

引用:https://blog.csdn.net/wy233333/article/details/103807987

1、不是有Date吗?

可读性差点,格式需要SimpleDateFormat转换

获取固定专用时间处理麻烦,好多getYear()...都弃用了

 

2、为什么禁用static修饰SimpleDateFormat/

多线程访问时,format方法和parse方法线程不安全,每次调用都创建一个SimpleDateFormat,但是耗性能和内存

 

3、Calendar?可以去试试处理时间的,我们需要很多自定义常用时间的获取方法,你来一个一个慢慢敲还是用补充完善版本的LocalDateTime?

 

Java8特供:LocalDate、LocalTime、LocalDateTime

1、实例化API:

2、对象方法:很全吧

简单测试

package com.wxrem.controller;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAdjuster;
import java.time.temporal.TemporalAdjusters;

/**
 * @author wxb
 * @date 2020-08-25 09:37
 */
public class MyLocalDateTest {
    public static void main(String[] args) {
        test();
    }

    public static void test(){
        LocalDate localDate = LocalDate.now();
        System.out.println(localDate.with(TemporalAdjusters.firstDayOfMonth()));
        LocalDateTime localDateTime = LocalDateTime.now();

        System.out.println(localDateTime);
        System.out.println(localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));

        System.out.println(localDateTime.with(TemporalAdjusters.firstDayOfMonth()));
        System.out.println(localDateTime.with(TemporalAdjusters.firstDayOfMonth()).
                format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));

        System.out.println(LocalDateTime.parse("2020-11-01T09:40:28.276"). format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));

    }
}

结果,其他就不粘了,简单易懂的API命名

2020-11-01
2020-11-25T09:45:37.878
2020-11-25 09:45:37
2020-11-01T09:45:37.878
2020-11-01 09:45:37
2020-11-01 09:40:28

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值