Date类和Calender类

Posted 超霸霸

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Date类和Calender类相关的知识,希望对你有一定的参考价值。

Date类和Calender类

一、Date类

  • 需要的包名:
import java.util.Date;
  • 构造方法:

    • 空参构造方法
    Date date = new Date();
    System.out.println(date);
    

    输出结果:

    Fri Sep 17 23:07:39 CST 2021
    
    • 带一个long型参数的构造方法
    Date date = new Date(20202036598L);
    System.out.println(date);
    

    输出结果:

    Sun Aug 23 03:40:36 CST 1970
    
  • DateFormat类&SimpleDateFormat类

    • 作用:根据指定模板创建日期格式化对象

    • 成员方法:

    1. String format(Date d)(根据指定格式格式化日期对象)
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    public class test {
        public static void main(String[] args) {
            Date date = new Date();
            System.out.println(date);
            SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH点:mm分:ss秒");
            String format=sdf.format(date);
            System.out.println(format);
        }
    }
    

    输出结果:

    Fri Sep 17 23:15:37 CST 2021
    2021年09月17日 23点:15分:37秒
    
    1. Date parse(String s)(根据指定格式解析字符串)
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    public class test {
        //注意:这里要抛出ParseException异常,否则报错
        public static void main(String[] args) throws ParseException {
            String str="2021年09月17日 23点:15分:37秒";
            SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH点:mm分:ss秒");
            Date parse=sdf.parse(str);
            System.out.println(parse);
        }
    }
    

    输出结果:

    Fri Sep 17 23:15:37 CST 2021
    

二、Calendar类

  • 需要的包名:
import java.util.Calendar;
  • 创建对象的方式:
Calendar c=Calendar.getInstance();
  • 成员方法:

    • get方法
    Calendar c=Calendar.getInstance();
    int year=c.get(Calendar.YEAR);
    int month=c.get(Calendar.MONTH);
    System.out.println(year);	//2021
    System.out.println(month);	//8
    
    • set方法
    import java.util.Calendar;
    
    public class test {
        public static void main(String[] args) {
            Calendar c=Calendar.getInstance();
            c.set(Calendar.YEAR,2024);
            c.set(Calendar.MONTH,2);
            int year=c.get(Calendar.YEAR);
            int month=c.get(Calendar.MONTH);
            System.out.println(year);	//2024
            System.out.println(month);	//2
        }
    }
    
    • add方法
    import java.util.Calendar;
    
    public class test {
        public static void main(String[] args) {
            Calendar c=Calendar.getInstance();
            int year=c.get(Calendar.YEAR);
            int month=c.get(Calendar.MONTH);
            System.out.println(year);	//2021
            System.out.println(month);	//8
            
            c.add(Calendar.YEAR,2);
            c.add(Calendar.MONTH,-3);
            year=c.get(Calendar.YEAR);
            month=c.get(Calendar.MONTH);
            System.out.println(year);	//2023
            System.out.println(month);	//5
        }
    }
    
  • Date对象和Calendar对象的转换:

import java.util.Calendar;
import java.util.Date;

public class test {
    public static void main(String[] args) {
        Calendar c=Calendar.getInstance();
        Date date=c.getTime();
        System.out.println(date);
    }
}
  • 计算程序执行时间:
public class test {
    public static void main(String[] args) {
        long s = System.currentTimeMillis();
        //执行一个for循环
        for (int i = 0; i < 9999; i++) {
            System.out.println(i);
        }
        long e = System.currentTimeMillis();
        System.out.println("耗时:"+(e-s)+"毫秒");	//耗时:85毫秒
    }
}

以上是关于Date类和Calender类的主要内容,如果未能解决你的问题,请参考以下文章

Java中Date和Calender类的使用方法

Java-常用API(StringBuffer,Math,Date,DataFormat,Calender,Runtime,System,包装类)

java 练习7 打印当前时间

android 日期时间使用哪个 calender date time

java之Calender类精选

片段内部静态类和gradle问题