java String、Date、LocalDate相互转换

String 和 LocalDate 借助 DateTimeFormatter

//String -> LocalDateTime
String timeStr = "2022/6/20"
LocalDate parse = LocalDate.parse(timeStr, 
    DateTimeFormatter.ofPattern("yyyy/M/dd"));
//LocalDateTime -> String
LocalDateTime now = LocalDateTime.now();
        //s = 2022-06-20T18:42:35.332
        String s = now.toString();

Date 和 LocalDate 借助 Instance

Date date = new Date();
        //Date -> LocalDate
        LocalDate localDate = date.toInstant()
                .atZone(ZoneId.systemDefault()).toLocalDate();
        //Date -> LocalDateTime
        LocalDateTime localDateTime = date.toInstant()
                .atZone(ZoneId.systemDefault()).toLocalDateTime();
        System.out.println("localDate = " + localDate);
        System.out.println("localDateTime = " + localDateTime);
        //LocalDateTime -> Date
        Date from = Date
            .from(localDateTime.atZone(ZoneId.systemDefault()).toInstant());
        System.out.println("from = " + from);

Date 和 String 借助 SimpleDateFormat

        String date = "2022/6/20 23:11:59";
        //String -> Date
        SimpleDateFormat dateFormat =
                new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");
        Date parse = dateFormat.parse(date);
        //parse = Mon Jun 20 23:11:59 CST 2022
        System.out.println("parse = " + parse);

        //Date -> String
        String s = parse.toString();
        //s = Mon Jun 20 23:11:59 CST 2022
        System.out.println("s = " + s);

测一测,下面的代码是否报错?

        如果会报错,请现将那个 parse 发到评论区。然后自己CV玩一把看看吧~~~

        String timeStr = "2022/10/30";
        LocalDate parse = LocalDate.parse(timeStr,
                DateTimeFormatter.ofPattern("yyyy/MM/dd"));
        System.out.println("parse = " + parse);
        LocalDate parse2 = LocalDate.parse(timeStr,
                DateTimeFormatter.ofPattern("yyyy/M/dd"));
        System.out.println("parse2 = " + parse2);

        String timeStr2 = "2022/3/30";
        LocalDate parse3 = LocalDate.parse(timeStr2,
                DateTimeFormatter.ofPattern("yyyy/MM/dd"));
        System.out.println("parse3 = " + parse3);
        LocalDate parse4 = LocalDate.parse(timeStr2,
                DateTimeFormatter.ofPattern("yyyy/M/dd"));
        System.out.println("parse4 = " + parse4);

        String timeStr3 = "2022/03/30";
        LocalDate parse5 = LocalDate.parse(timeStr3,
                DateTimeFormatter.ofPattern("yyyy/MM/dd"));
        System.out.println("parse5 = " + parse5);
        LocalDate parse6 = LocalDate.parse(timeStr3,
                DateTimeFormatter.ofPattern("yyyy/M/dd"));
        System.out.println("parse6 = " + parse6);

 


版权声明:本文为a_littleStory原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。