Date类
Calendar 类是一个抽象类
import java.util.Calendar;
/*
* 日历 此对象中包含日历相关的信息.
* Calendar 类是一个抽象类
* Calendar c1 = Calendar.getInstance();
* */
public class ClendarDemo {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
System.out.println(calendar.get(Calendar.YEAR)+" "+calendar.get(1));// public final static int YEAR = 1;
System.out.println(calendar.get(Calendar.MONTH)+1+" "+(calendar.get(2)+1));// public final static int MONTH = 2;
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));// public final static int DAY_OF_MONTH = 5;
}
}
运行结果:
2020 2020
9 9
18
获得当前系统的毫秒值
获得当前系统到1970年07月01日0时0分0秒的毫秒数
-
方法1
long L = System.currentTimeMillis();
-
方法2
long time = new Date().getTime();
-
方法3
long millis = Calendar.getInstance().getTimeInMillis();
import java.util.Calendar;
import java.util.Date;
/*
* 获得当前系统到1970年07月01日0时0分0秒的毫秒数
* */
public class Interconversion {
public static void main(String[] args) {
// 方法1:通过当前系统System
long L = System.currentTimeMillis();
System.out.println(L);
// 方法2:通过new Date()API获得
long time = new Date().getTime();
System.out.println(time);
// 方法3:通过抽象类Calendar中的方法获得
long millis = Calendar.getInstance().getTimeInMillis();
System.out.println(millis);
}
}
运行结果:
1600418336674
1600418336674
Date与String之间的相互转换
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
/*
*
* SimpleDateFormat 使得可以选择任何用户定义的日期-时间格式的模式。
*
* 日期 --------- > String
* public final String format(Date date):
*
* String ----- > 日期
* public Date parse(String source) throws ParseException
*
* */
public class SimpleDateFormatDemo {
public static void main(String[] args){
// 日期转字符串
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String string = sdf.format(date);
System.out.println(string);
// 字符串转日期
String string2 = "1999-09-15";
try {
// parse(String string)是编译时期异常
date = sdf.parse(string2);
System.out.println(date);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
运行结果:
2020-09-18
Wed Sep 15 00:00:00 CST 1999
拓展:
// Date类型转变成对应时间的毫秒值
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm");
try {
date = sdf.parse("2020-09-18 09:38");
System.out.println("data.getTime()获得指定时间的毫秒值:"+date.getTime());
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// Calendar类转型为对应时间毫秒值
Calendar calendar = Calendar.getInstance();
calendar.set(2020, 9, 18);
System.out.println("calendar.getTimeInMillis()获得指定时间的毫秒值:"+calendar.getTimeInMillis());
// Data类型转变为其他格式(String)
Date date2 = new Date();
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println("Data类型转变为其他格式(String):"+sdf1.format(date2));
// Date类型和Calendar类型之间的相互转换
// Date 类型转换为 Calendar类型
Calendar calendar2 = Calendar.getInstance();
calendar2.setTime(new Date());
System.out.println("Date 类型转换为 Calendar类型:"+calendar2.getTimeInMillis());
// Calendar 类型转换为 Date 类型
Calendar calendar3 = Calendar.getInstance();
Date date1 = calendar3.getTime();
System.out.println("Calendar 类型转换为 Date 类型:"+date1);
运行结果:
data.getTime()获得指定时间的毫秒值:1600393080000
Data类型转变为其他格式(String):2020-09-18 05:03:28
Date 类型转换为 Calendar类型:1600419808609
Calendar 类型转换为 Date 类型:Fri Sep 18 17:03:28 CST 2020