目录
1.Date类
构造方法
Date d1 = new Date();
System.out.println(d1);
// Wed Nov 24 20:36:14 CST 2021
long date = 1000*60*60;
Date d2 = new Date(date);
System.out.println(d2);
// Thu Jan 01 09:00:00 CST 1970
// 常用方法
Date d3 = new Date();
long time = d3.getTime();
// 从1971.1.1 00:00:00 到现在的毫秒值
long time1 = 1000*60*60;
d3.setTime(time1);
System.out.println(d3); // Thu Jan 01 09:00:00 CST 1970 东八区要换时区
2.SimpleDateFormat类
y --- 年 M --- 月 d --- 日 H --- 时 m --- 分 s --- 秒
format()
// 格式化 (format) date --> String
Date d1 = new Date();
// 无参构造
SimpleDateFormat sdf = new SimpleDateFormat();
String f = sdf.format(d1);
System.out.println(f); // 2021/11/24 下午9:02
// 加入参数
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
String f1 = sdf1.format(d1);
System.out.println(f1); // 2021年11月24日 21:06:55
// String --> date
String dd = "2019-08-22 11:39:11";
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date parse = sdf2.parse(dd);
System.out.println(parse); // Thu Aug 22 11:39:11 CST 2019
日期工具案例
public class date {
public static void main(String[] args) throws ParseException {
Date d = new Date();
String s = "yyyy年MM月dd日 HH:mm:ss";
String s1 = dateToString(d, s);
System.out.println(s1);
String s2 = "2010年11月30日 13:34:34";
Date date = stringToDate(s2, s);
System.out.println(date);
}
public static String dateToString(Date date, String format) {
SimpleDateFormat sdf = new SimpleDateFormat(format);
String format1 = sdf.format(date);
return format1;
}
public static Date stringToDate(String s, String format) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat(format);
Date parse = sdf.parse(s);
return parse;
}
}
3.Calendar类
二月天案例
// 先获取年,用户输入
Scanner sc = new Scanner(System.in);
System.out.println("请输入年份:");
int year = sc.nextInt();
Calendar c = Calendar.getInstance();
c.set(year, 2, 1);
c.add(Calendar.DATE, -1);
int date = c.get(Calendar.DATE);
System.out.println(year + "年的二月有" + date + "天" );