zoukankan      html  css  js  c++  java
  • Java日期转换格式

    package com.date;
    
    import java.time.Instant;
    import java.time.LocalDate;
    import java.time.LocalDateTime;
    import java.time.LocalTime;
    import java.time.MonthDay;
    import java.time.format.DateTimeFormatter;
    import java.time.temporal.ChronoUnit;
    import java.util.Date;
    
    import org.junit.Test;
    
     
    public class DateAllMethods {
        //测试LocalDate类★ ★★★★★★★★★★★★★★★★★★★★★★★★
            @Test
            public void testLocalDate() {
                // 获取当前日期(只包含日期,不包含时间)第三代
                //只有日期 
                LocalDate date = LocalDate.now();
                System.out.println(date);
    
                // 获取日期的指定部分
                System.out.println("year:"+date.getYear());
                System.out.println("month:"+date.getMonth());
                System.out.println("day:"+date.getDayOfMonth());
                System.out.println("week:"+date.getDayOfWeek());
    
                // 根据指定的日期参数,创建LocalDate对象
                LocalDate of = LocalDate.of(2010, 3, 2);
                //可以使用年月日来反向生成当前的日期对象
                System.out.println(of);
    
            }
    
            // 测试LocalTime类
            @Test
            public void testLocalTime() {
                // 获取当前时间(只包含时间,不包含日期)
                LocalTime time = LocalTime.now();
                System.out.println(time);
    
                // 获取时间的指定部分
                System.out.println("hour:" + time.getHour());
                System.out.println("minute:" + time.getMinute());
    
                System.out.println("second:" + time.getSecond());
                System.out.println("nano:" + time.getNano());
    
                // 根据指定的时间参数,创建LocalTime对象
                LocalTime of = LocalTime.of(10, 20, 55);
                System.out.println(of);
    
            }
    
            // 测试LocalDateTime类
            @Test
            public void testLocalDateTime() {
                // 获取当前时间(包含时间+日期)
    
                LocalDateTime time = LocalDateTime.now();
    
                // 获取时间的指定部分
                System.out.println("year:" + time.getYear());
                System.out.println("month:" + time.getMonthValue());
                System.out.println("day:" + time.getMonth());
                System.out.println("day:" + time.getDayOfMonth());
                System.out.println("hour:" + time.getHour());
                System.out.println("minute:" + time.getMinute());
    
                System.out.println("second:" + time.getSecond());
                System.out.println("nano:" + time.getNano());
    
                // 根据指定的时间参数,创建LocalTime对象
                LocalDateTime of = LocalDateTime.of(2020, 2, 2, 10, 20, 55);
                System.out.println(of);
    
            }
    
            // 测试MonthDay类:检查重复事件
            @Test
            public void testMonthDay() {
    
                LocalDate birth = LocalDate.of(1994, 12, 12);
                MonthDay birthMonthDay = MonthDay.of(birth.getMonthValue(), birth.getDayOfMonth());
    
                LocalDate now = LocalDate.now();//当前日期
                MonthDay current = MonthDay.from(now); //通过LocalDate 获取月日
                System.out.println(current);
    
                //我们的日期是相互可以比较的
                if (birthMonthDay.equals(current)) {
                    System.out.println("今天生日");
                } else {
                    System.out.println("今天不生日");
                }
    
            }
    
            // 测试是否是闰年 ★ ★★★★★★★★★★★★★★★★★★★★★★★★
            @Test
            public void testIsLeapYear() {
    
                LocalDate now = LocalDate.now();//当前日期
    
                System.out.println(now.isLeapYear());//判断闰年
    
            }
    
            // 测试增加日期的某个部分
            @Test
            public void testPlusDate() {
    
                LocalDate now = LocalDate.now();
                //查看三年前今天的日期
                LocalDate plusYears = now.plusYears(-3); //这里很灵活
                //LocalDate plusYears = now.plusWeeks(-3); //查看三周前的日期
                System.out.println(plusYears);
    
            }
    
            // 使用plus方法测试增加时间的某个部分
            @Test
            public void testPlusTime() {
    
                LocalTime now = LocalTime.now();
                //查看一小时后的时间
                LocalTime plusHours = now.plusHours(1);
    
                System.out.println(plusHours);
    
            }
    
            // 使用minus方法测试查看一年前和一年后的日期
            @SuppressWarnings("unused")
            @Test
            public void testMinusTime() {
                LocalDate now = LocalDate.now();
                //在当前日期基础上减去1年
                LocalDate minus = now.minus(1, ChronoUnit.YEARS);
                
                LocalDate minus2 = now.minusYears(1);
                System.out.println(minus2);
    
            }
            //测试时间戳类:Instant ,相当于以前的Date类 ★ ★★★★★★★★★★★★★★★★★★★★★★★★
            @Test 
            public void testInstant() {
                
                Instant now = Instant.now();
                System.out.println(now);
                
                //与Date类的转换
                Date date = Date.from(now);
                System.out.println(date);
                
                Instant instant = date.toInstant();
                
                System.out.println(instant);
                
                
    
            }
            //测试DateTimeFormatter ★ ★★★★★★★★★★★★★★★★★★★★★★★★
            @Test 
            public void testDateTimeFormatter() {
                
                //第三代 DateTimeFormatter
                //可以将 日期转换成字符串
                DateTimeFormatter pattern = DateTimeFormatter.ofPattern("MM-dd yyyy HH:mm:ss");
                
                //将字符串转换成日期
                
                LocalDateTime parse = LocalDateTime.parse("03-03 2017 08:40:50", pattern);
                System.out.println(parse);
                
                //将日期转换成字符串
                
                String format = pattern.format(parse);
                System.out.println(format);
                    
    
            }
        }
  • 相关阅读:
    企业IT管理员IE11升级指南【7】—— Win7和Win8.1上的IE11功能对比
    Microsoft Azure Web Sites应用与实践【3】—— 通过Visual Studio Online在线编辑Microsoft Azure 网站
    Microsoft Azure Web Sites应用与实践【2】—— 通过本地IIS 远程管理Microsoft Azure Web Site
    万以内的数字转繁体
    你的生产力工具集
    nodejs保存图片至本地
    设置input 中placeholder的样式
    微信支付报调用支付JSAPI缺少参数: sign
    vuepress项目 配置/使用/部署 markdown语法
    移动端自适应js
  • 原文地址:https://www.cnblogs.com/yonxin/p/12490462.html
Copyright © 2011-2022 走看看