Date格式转为String,Date转Date,String转Date

近期,遇到很多关于Date转String,String转Date,Date转Date的问题

1.Date格式转为"yyyy-MM-dd HH:mm:ss"的String格式

        Date date = new Date();
        //方法1:
        String s = DateUtil.formatDateTime(date);//Fri Mar 10 16:38:27 CST 2023

        //方法2:
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//定义新的日期格式
        String dateString = formatter.format(date);

输出结果为:2023-03-10 16:38:27 

2.Sting格式转为"yyyy-MM-dd HH:mm:ss"的Date格式

        //String testTime = "Fri Mar 10 16:38:27 CST 2023";//也可以
        String testTime = "2023-03-11 16:38:27";
        Date date = DateUtil.parse(testTime); //yyyy-MM-dd HH:mm:ss
        Date beginOfDay = DateUtil.beginOfDay(date);  //yyyy-MM-dd 00:00:00
        Date endOfDay = DateUtil.endOfDay(date);//yyyy-MM-dd 23:59:59
        System.out.println(date);
        System.out.println(beginOfDay);
        System.out.println(endOfDay);

输出结果:2023-03-11 16:38:27
                  2023-03-11 00:00:00
                  2023-03-11 23:59:59

 3.Date格式转为"yyyy-MM-dd"格式的Date

Date date = new java.sql.Date(new Date().getTime());
System.out.println(date);

输出结果为:2023-03-10 

4. Date格式转为"yyyy-MM-dd HH:mm:ss"的Date格式

        Date startDate = new Date();
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//定义新的日期格式
        String dateString = formatter.format(startDate);
        Date date = DateUtil.parse(dateString, "yyyy-MM-dd HH:mm:ss");
        System.out.println(date);

输出结果:2023-03-10 17:03:10

5.String类型的日期  转换为Long类型

        Date lastDate = null;
        String s = "2023-03-10";
        lastDate = DateUtil.parse(s);
        Long time = lastDate.getTime();
        System.out.println(time);

输出结果:1678377600000

6.取日期集合中最大的日期

 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        List<Date> dateList = new ArrayList<>();
        String dateStr1 = "2023-12-12 5:00:00";
        String dateStr2 = "2008-12-11 23:55:01";
        String dateStr3 = "2018-12-10 00:04:00";
        String dateStr4 = "2018-12-12 04:00:00";
        String dateStr5 = "2018-12-11 23:59:55";
        Date parse1 = sdf.parse(dateStr1);
        Date parse2 = sdf.parse(dateStr2);
        Date parse3 = sdf.parse(dateStr3);
        Date parse4 = sdf.parse(dateStr4);
        Date parse5 = sdf.parse(dateStr5);
        dateList.add(parse1);
        dateList.add(parse2);
        dateList.add(parse3);
        dateList.add(parse4);
        dateList.add(parse5);
        
        Date max = Collections.max(dateList);
        System.out.println(sdf.format(max));

输出结果为:2023-12-12 05:00:00

7.比当前日期大一天
  LocalDateTime dateTime = LocalDateTime.now().plusDays(1);

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值