Calendar是日历类,该类将所有可能用到的时间信息封装为静态成员变量,方便获取。
Calendar为抽象类,由于语言敏感性,Calendar类在创建对象时并非直接创建,而是通过静态方法创建,将语言敏感内容处理好,再返回子类对象
Calendar c = Calendar.getInstance(); //返回当前时间
时间戳:1970年到现在的总秒数。
Calendar类常用方法
package MONA.demo06_calendar;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class Demo {
public static void main(String[] args) {
//获取对象(单例设计模式) get方法
Calendar instance = Calendar.getInstance();
int year = instance.get(Calendar.YEAR);
int month = instance.get(Calendar.MONTH);
System.out.println(year);
//获取到的月份是从0开始
System.out.println(month);
//对日期进行增加操作 add方法
instance.add(Calendar.YEAR,3);
System.out.println("对年份进行增加"+instance.get(Calendar.YEAR));
//获取时间戳 getTime方法
Date date = instance.getTime();
System.out.println(date.toLocaleString());
//1970年到现在的总秒数
System.out.println("时间戳"+date.getTime());
//Calendar 格式化
Date date1 = new Date(instance.getTime().getTime());
//格式化 format方法
DateFormat df = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
String s= df.format(date1);
System.out.println(s);
}
}
Calendar练习:计算出生的天数
package MONA.demo07_Calendar练习;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Demo {
public static void main(String[] args) throws ParseException {
//求自己出生了多少天
//2002-11-06
String s1 = "2002-11-06";
//将生日解析成Date类型
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date date = df.parse(s1);
//出生时的毫秒数
long time = date.getTime();
//现在的毫秒数
long time2 = System.currentTimeMillis();
//出生时的天数
long days = (time2 - time)/(60*60*24*1000);
System.out.println(days);
}
}



