jdk8关于Localdate和LocalDateTime的一些用法

    /**
     * 在使用localdate时,"2018-5-9"是不能转换的,需要在月份和日期前面加上0,例如:"2018-05-09";
     * 但是使用重载方法加入formater参数就可以实现了;
     * @autho: [email protected]
     * @date: 2018-11-10
     */
    public static void textToDate() {
        String s1="2018-05-08";
        String s2="2018-8-9";
        String s3="2018-10-12";
        LocalDate d1 = LocalDate.parse(s1);
        //使用自定义的格式可以对上面三种类型的格式通用,都可以转成localdate格式;
        DateTimeFormatter ofPattern = DateTimeFormatter.ofPattern("yyyy-M-d");
        LocalDate d2 = LocalDate.parse(s1,ofPattern);
        LocalDate d3 = LocalDate.parse(s2,ofPattern);
        LocalDate d4 = LocalDate.parse(s3,ofPattern);
        System.out.println(d1);
        System.out.println(d2);
        System.out.println(d3);
        System.out.println(d4);
//        2018-05-08
//        2018-05-08
//        2018-08-09
//        2018-10-12
    }
    
    /**
     * LocalDateTime和LocalDate的转换是一样的,都可以通过使用format实现添加0的效果;
     * @autho: [email protected]
     * @date: 2018-11-10
     */
    public static void textToDateTime() {
        String t1="2018-2-1 1:1:1";
        String t2="2018-11-11 11:11:11";
        String t3="2018-8-9 11:11:11";
        String t4="2018-12-11T11:11:11";
        
        DateTimeFormatter ofPattern = DateTimeFormatter.ofPattern("yyyy-M-d H:m:s");
        
        LocalDateTime parse1 = LocalDateTime.parse(t1,ofPattern);
        System.out.println(parse1);
        LocalDateTime parse2 = LocalDateTime.parse(t2,ofPattern);
        System.out.println(parse2);
        LocalDateTime parse3 = LocalDateTime.parse(t3,ofPattern);
        System.out.println(parse3);
        LocalDateTime parse4 = LocalDateTime.parse(t4);
        
        System.out.println(parse4);
        
        
//        2018-02-01T01:01:01
//        2018-11-11T11:11:11
//        2018-08-09T11:11:11
//        2018-12-11T11:11:11
        
    }
 

你可能感兴趣的:(java)