JDK8.0之前的时间类API使用

时间:2024-4-8    作者:老大夫    分类: JAVA


  1. System类的currentTimeMillis()
    获取当前时间的毫秒,long类型,时间戳
    当前时间与1970年1月1日之间的毫秒数

  2. 两个Date类

java.util.Date

public classDateDemo {
    public static void main(String[] args) {
        Date today=new Date();//创建一个基于目前时间的Date类对象
        System.out.println(today.getTime());//获取毫秒值

        Date oneDay=new Date(1712480078955L);//创建一个基于指定时间戳的时间
        System.out.println(oneDay.toString());
        System.out.println(today.toString());
    }
}

java.sql.Date(是util.Date的子类) 对应着数据库中的Date类型数据

public class classDateDemo {
    public static void main(String[] args) {
        Date oneDay=new Date(1712480078955L);//只能用时间戳来创建日期对象
        System.out.println(oneDay.toString());//打印出来只有年月日,然是也包含时分秒  2024-04-07
    }
}

注意sql包下的Date类只能用时间戳来创建,不可以空参。

SimpleDateFormat类

主要就是用于日期时间的格式化和解析
格式化:时间日期(毫秒值)-----》字符串
解析:字符串------》时间日期(毫秒值)

public class DateDemo {
    //ParseException为解析异常
    public static void main(String[] args) throws ParseException {
        SimpleDateFormat sdf=new SimpleDateFormat();
        //格式化
        String toDay = sdf.format(new Date());
        System.out.println(toDay);//默认格式  24-4-8 下午9:12
        //解析
        Date toDay2 = sdf.parse("24-4-8 下午9:12");
        System.out.println(toDay2.getTime());

    }
}

class TestSimpleDateFormat{
    public static void main(String[] args) throws ParseException {
        //指定格式创建
        SimpleDateFormat sdf2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");//指定格式,写法可以参考java手册
        //格式化
        System.out.println(sdf2.format(new Date()));
        //解析
        Date toDay = new Date();
        Date toDay2 = sdf2.parse("2024-04-08 21:23:51 708");
        System.out.println(toDay2.getTime());
    }
}

Calender类(日历类)抽象类

它代替了大量的Date类中的内容
Calender直接使用定义好的常量很方便,类似Calendar.DAY_OF_MONTH。只要点一下就可以出现自己想要的日期了

创建实例

class CalenderTest{
    public static void main(String[] args) {
        Calendar calendar = Calendar.getInstance();
        System.out.println(calendar.getClass());//Calender是抽象类不能创建对象,这里使用的是它的子类GregorianCalendar
        //方法的使用
        //get
        System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//当月第八天
        System.out.println(calendar.get(Calendar.HOUR_OF_DAY));

        //set
        calendar.set(Calendar.DAY_OF_MONTH,1);//更改成当月第一天
        System.out.println(calendar.get(Calendar.DAY_OF_MONTH));

        //add
        calendar.add(Calendar.DAY_OF_MONTH,4);//增加4天
        calendar.add(Calendar.DAY_OF_MONTH,-2);//也可以用负数减少
        System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//变成当月的第3天

        //Calender----》 Date
        Date today = calendar.getTime();
        System.out.println(today.toString());

        //setTime
        Date oneDay=new Date();
        calendar.setTime(oneDay);
        System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//又变成今天的日期了
    }
}

方法:
get 、 set 、 add 、getTime() 、 setTime

版权所有:伸手党盘
文章标题:JDK8.0之前的时间类API使用
文章链接:https://ssdpan.cn/?post=374
本站文章来源于网络搜集和原创,仅供学习使用,未经授权请勿用于任何商业用途,如有侵权及时联系删除

推荐阅读:


扫描二维码,在手机上阅读