自学内容网 自学内容网

第六章 6.4 日期处理

1000毫秒 = 1秒

Date类 

date类的构造方法

import java.util.Date;

public class DateTest {
    public static void main(String[] args) {
        //Date类的构造方法

        //无参构造
        //获取系统当前时间
        Date date = new Date();
        System.out.println(date);//Thu Oct 10 09:36:07 CST 2024

        //有参构造方法
        //获取指定的时间,从1970年8时0分0秒开始累加 1000毫秒 = 1秒
        Date date1 = new Date(1000);//Thu Jan 01 08:00:01 CST 1970
        System.out.println(date1);

        //获取当前系统前10分钟时间
        Date date2 = new Date(System.currentTimeMillis() - 1000*60*10);
    }
}

日期格式化

Thu Oct 10 09:38:22 CST 2024 ---标志输出不符合我们常用格式

调用java.text.DateFormat

 java.test.SimpleDateFormat(用这个,DatetFormat的子类)

  • 自定义格式
  • SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-dd HH:mm:ss SSS");
  • 字符串转日期
  •  Date dates = sdf2.parse(strDate);
public class DateFormatTest {
    public static void main(String[] args) throws ParseException {

        //java.utilDate ---> java.lang.String
        //日期转字符串
        //获取系统当前时间
        Date date = new Date();
        //格式化
        SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-dd HH:mm:ss SSS");
        //调用sdf中的format()方法用来重写格式
        String str = sdf.format(date);
        System.out.println(str);//2024-10-10 09:45:18 692

        //java.lang.String ---> java.util.Date
        //字符串转日期

        String strDate = "2008-08-08 08:08:08 888";
       SimpleDateFormat sdf2 =  new SimpleDateFormat("YYYY-MM-dd HH:mm:ss SSS");
       //解析:将字符串转化为Date
       Date dates = sdf2.parse(strDate);
        System.out.println(dates); //Mon Dec 31 08:08:08 CST 2007
    }
}

日历类

日历类源码是抽象类不可实例化,直接调用静态方法即可

public class CalendarTest {
    public static void main(String[] args) {
        //获取系统当前时间的日历
        Calendar c = Calendar.getInstance();
        int month = c.get(Calendar.MONTH);
        System.out.println(month);//输出9 代表10月份
        System.out.println(c.get(Calendar.DAY_OF_MONTH));//输出10,表示10月份第10天
    }
}

日历类的常用修改方法

set方法

public class CalendarTest {
    public static void main(String[] args) {
        //获取当前时间的日历
        Calendar c = Calendar.getInstance();

        //获取2008年的日历,2个参数Calendar.YEAR,2008
        c.set(Calendar.YEAR,2008);

        //获取2008年8月8日8时8分8秒日历
        c.set(2008,Calendar.AUGUST,8,8,8,8);

        //获取日历的年月日信息
        System.out.println(c.get(Calendar.YEAR)+"年"
                +(c.get(Calendar.MONTH) + 1) + "月"
                + c.get(Calendar.DAY_OF_MONTH) + "日");//2008年10月10日


    }
}
add方法

//年+1
        c.add(Calendar.YEAR,1);

setTime()方法

Java8的新日期API

 ①获取当前时间/指定日期/加日期方法

获取当前时间/指定日期/加日期

import java.time.LocalDateTime;

public class newDate {
    public static void main(String[] args) {
        //当前时间,精确到纳秒级
        LocalDateTime now = LocalDateTime.now();
        System.out.println(now);
        //获取指定时间
        LocalDateTime localDateTime = LocalDateTime.of(2008, 8, 8, 8, 8, 8, 8);
        System.out.println(localDateTime);
        
        //加日期时间
        LocalDateTime localDateTime1 = localDateTime.plusYears(1);
        System.out.println(localDateTime1);
    }
}

③计算时间间隔

④计算日期间隔 

 ⑤时间矫正器

 

⑥日期格式化

 

 


原文地址:https://blog.csdn.net/tiao_tiao_hu/article/details/142812832

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!