zoukankan      html  css  js  c++  java
  • java-Date类,DateFormat类,Calendar类

    一.Date类

    System.currentTimeMillis()  返回值long类型参数

    //创建日期对象,把当前的毫秒值转成日期对象
    Date date = new Date(1607616000000L);
    System.out.println(date);
    //打印结果:Fri Dec 11 00:00:00 CST 2020

    Date类常用方法

    getTime():把日期对象转换成对应的时间毫秒值

    二.DateFormat

    DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。日期/时间格式化子类(如 SimpleDateFormat类)允许进行格式化(也就是日期 -> 文本)、解析(文本-> 日期)和标准化。

    1.日期格式

    构造方法

    SimpleDateFormat(String pattern):用给定的模式和默认语言环境的日期格式符号构造SimpleDateFormat

    DateFormat类方法

    format(Date date):将一个Date格式化为日期/时间字符串

    //创建日期格式化对象,在获取格式化对象时可以指定风格
    DateFormat df= new SimpleDateFormat("yyyy-MM-dd");//对日期进行格式化
    Date date = new Date(1607616000000L);
    String str_time = df.format(date);
    System.out.println(str_time);//2020年12月11日

    DateFormat类的作用:即可以将一个Date对象转换为一个符合指定格式的字符串,也可以将一个符合指定格式的字符串转为一个Date对象。

    规则是在一个字符串中,会将以下字母替换成对应时间组成部分,剩余内容原样输出:

    当出现y时,会将y替换成年

    当出现M时,会将M替换成月

    当出现d时,会将d替换成日

    当出现H时,会将H替换成时

    当出现m时,会将m替换成分

    当出现s时,会将s替换成秒

     

    2.DateFormat类常用方法

     

    format(Date date),用来将Date对象转换成String

    parse(String source),用来将String转换成Date(转换时,该String要符合指定格式,否则不能转换)

    //把Date对象转换成String
         Date date = new Date(1607616000000L);//Fri Dec 11 00:00:00 CST 2020
        DateFormat df = new SimpleDateFormat(“yyyy年MM月dd日”);
        String str = df.format(date);
        //str中的内容为2020年12月11日
    
    //把String转换成Date对象
        String str = ”2020年12月11日”;
        DateFormat df = new SimpleDateFormat(“yyyy年MM月dd日”);
        Date date = df.parse( str );
        //Date对象中的内容为Fri Dec 11 00:00:00 CST 2020

    三.Calendar类

    Calendar是日历类,在Date后出现,替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。

    Calendar为抽象类,由于语言敏感性,Calendar类在创建对象时并非直接创建,而是通过静态方法创建,将语言敏感内容处理好,再返回子类对象

    Calendar c = Calendar.getInstance();  //返回当前时间

    1.Calendar类常用方法

    public static Calendar getInstance() //获取日期对象
    public int get(int field)    //获取时间字段值,字段参见帮助文档

    YEAR 年
    MONTH 月,从0开始算起,最大11;0代表1月,11代表12月。
    DATE 天
    HOUR 时
    MINUTE分
    SECOND秒

        Calendar c = Calendar.getInstance();
        int year = c.get(Calendar.YEAR);
    public void add(int field,int amount)    //指定字段增加某值
    
        Calendar c = Calendar.getInstance();
        //修改当前时间为3天后
        c.add(Calendar.DATE, 3);
        //修改当前时间为5小时后
        c.add(Calendar.HOUR, 5);
    public final void set(int field,int value)//设置指定字段的值
    
        Calendar c = Calendar.getInstance();
        //设置时间为2020年5月20日
        c.set(Calendar.YEAR, 2020);
        c.set(Calendar.MONTH, 4);
        c.set(Calendar.DATE, 20);
    public final Date getTime()    //获取该日历对象转成的日期对象
    
    Calendar c = Calendar.getInstance();
        Date d = c.getTime();

    2.注意事项

    西方星期的开始为周日,中国为周一。

    在Calendar类中,月份的表示是以0-11代表1-12月。

    日期是有大小关系的,时间靠后,时间越大。

  • 相关阅读:
    DPDK安装方法 17.12.13
    numa.h:No such file or directory 解决方法
    17秋 软件工程 第六次作业 Beta冲刺 Scrum3
    17秋 软件工程 第六次作业 Beta冲刺 总结博客
    17秋 软件工程 第六次作业 Beta冲刺 Scrum2
    Paper Reviews and Presentations
    17秋 软件工程 第六次作业 Beta冲刺 Scrum1
    17秋 软件工程 第六次作业 Beta冲刺
    error: could not create '/System/Library/Frameworks/Python.framework/Versions/2.7/share': Operation not permitted
    17秋 软件工程 个人作业 软件产品案例分析
  • 原文地址:https://www.cnblogs.com/akiyama/p/10222727.html
Copyright © 2011-2022 走看看