Jdk8之前日期时间API

139 阅读2分钟

Jdk8之前日期时间API

1.System类中currentTimeMillis()

System类提供的public static long currentTimeMillis()用来返回当前时间与1970年1月1日之间以毫秒为单位的时间差

class test{
//1.System.currentTimeMillis();
   long l = System.currentTimeMillis();
//System类提供的public static long currentTimeMillis()用来返回当前时间与1970年1月1日之间以毫秒为单位的时间差
}

2.java.util.Date和子类java.sql.Date

/**
 * JDK 8之前日期和时间的API测试
 */
public class DateTimeTest {
    /**
     * java.util.Date类
     *          /---java.sql.Date类----/
     * 1.两个构造器的使用
     *  构造器一:Date() 创建一个对应当前时间的Date对象
     *  构造器二:创建指定毫秒数的Date对象
     * 2.两个方法的使用
     *      toString():显示当前年,月,日,时分秒
     *      getTime():获取当前Date对象对应的毫秒数 时间戳
     * 3.java.sql.Date 对应着数据库中的日期类型的变量
     * 如何实例化
     * sql.Date--->util.Date
     */
        //构造器一:Date()
        public void test(){
        Date date1=new Date();
        System.out.println(date1.toString());//显示当前的年月日时分秒 Fri Dec 11 14:51:15 CST 2020
        System.out.println(date1.getTime());//获取当前Date对象的时间戳 1607669475224
        //构造器二:创建指定毫秒数的Date对象
        Date date = new Date(1606442472180L);
        System.out.println(date); //Fri Nov 27 10:01:12 CST 2020
        java.sql.Date date2 = new java.sql.Date(1606442472180L);
        System.out.println(date2); //2020-11-27
        System.out.println(date2.getTime()); //1606442472180
        Date date3 = new Date(date2.getTime()); 
        System.out.println(date3+"Date 3"); //Fri Nov 27 10:01:12 CST 2020Date 3
}
}

3.SimpleDateFormat类

/**
 * SimpleDateFormat的使用:SimpleDateFormat对日期Date类的格式化和解析
 * 1.两个操作
 * 1.1 格式化: 日期=》字符串
 * 1.2 解析: 格式化的逆过程 字符串=》日期
 * 2.SimpleDateFormat 的实例化
 */
class test{
    public void test(){
    //实例化SimpleDateFormat
    SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    Date date = new Date(); //Fri Dec 11 14:53:36 CST 2020
    String format = sdf.format(date);    //2020-12-11 02:53:36
    String str="2020-01-29 04:11:44";
    Date date1 = sdf.parse(str); //Wed Jan 29 04:11:44 CST 2020}
}
}

4.Calendar(日历)类

class test{
    public void test(){
/**
 * Calendar日历类(抽象类)的使用
 * 可变性
 */
    //1.实例化
    //方式一:创建其子类(GregorianCalendar)的对象
    //方式二:调用其静态方法getInstance()
    Calendar calendar = Calendar.getInstance();
    System.out.println(calendar.getClass()); //class java.util.GregorianCalendar
    //2.常用方法
    //get()
    int i = calendar.get(Calendar.DAY_OF_MONTH);//当前时间这个月第几天 11
    //set()  可以设置这个月的第几天
    calendar.set(Calendar.DAY_OF_MONTH,20);
     i = calendar.get(Calendar.DAY_OF_MONTH);//当前时间这个月第几天 20
    //add()  添加几天
    //getTime()
    Date time = calendar.getTime();//Sun Dec 20 14:58:01 CST 2020
    Date date=new Date();
    calendar.setTime(date); //Fri Dec 11 14:58:01 CST 2020
}
}