Calendar 类的应用

上一篇 说的 Date 类 最主要的作用就是获得当前时间,同事这个类里面也具有设置时间以及一些其他的功能,但是由于本身设计的问题,这些方法却遭到众多的批评,不推荐使用,要推荐使用Calendar 类进行时间和日期的处理。

说到 Calendar 类,当然的引入 Calendar包:java.util.Calendar

java.Calendar 类是一个抽象类,可以通过调用 getInstance()静态方法获取一个Calendar 对象,此对象已由当前日期时间初始化,即默认代表当前时间,如 Calendar c =Calendar.getInstance();

//获取年月日等信息
Calendar c=Calendar.getInstance();//创建Calendar对象
int year=c.get(Calendar.YEAR);
int mouth=c.get(Calendar.MONTH)+1;
int day=c.get(Calendar.DAY_OF_MONTH);
int hour=c.get(Calendar.HOUR_OF_DAY);
int minute=c.get(Calendar.MIUNTE);
int second=c.get(Calendar.SECOND);

  调用 Calendar 类的 getInstance() 方法获取一个实例,然后通过调用 get() 方法获取日期时间信息,参数为需要获得的字段的值。

Calendar 类提供了getTime() 方法,用来获取Date 对象,完成Calendar 和 Date 的转换,还可通过 getTimeInMillis() 方法,获取此Calendar 的时间值,以毫秒为单位。如下:

Calendar c=Calendar.getInstance();
Date date=c.getTime();//将 Calendar 对象转换为Date 对象
Long time=c.getTimeMillis();//获取当前毫秒数
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class HelloWorld {
    
    public static void main(String[] args) {
        
        
        // 创建Canlendar对象
        Calendar c = Calendar.getInstance();
        
        //int year=c.get(Calendar.YEAR);//获取年
        //int month=c.get(Calendar.MONTH)+1;//获取月份 
        //int day=c.get(Calendar.DAY_OF_MONTH);//获取日期
        //int hour=c.get(Calendar.HOUR_OF_DAY);//获取小时
        //int munute=c.get(Calendar.MINUTE);//获取分钟
        //int second=c.get(Calendar.SECOND);//获取秒
        //System.out.println("当前时间:"+ year +"-"+ mouth+"-"+ day +" "+ hour +":"+ munute +":"+ second);
        // 将Calendar对象转换为Date对象
        Date date =c.getTime(); 
        
        // 创建SimpleDateFormat对象,指定目标格式
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        
        // 将日期转换为指定格式的字符串
        String now = sdf.format(date);
        System.out.println("当前时间:" + now);
    }
}

 

你可能感兴趣的:(Calendar 类的应用)