Data类
java.util 包提供了 Date 类来封装当前的日期和时间。类 Date
有两个其他的函数。它允许把日期解释为年、月、日、小时、分钟和秒值。它也允许格式化和解析日期字符串。不过,这些函数的 API 不易于实现国际化。从 JDK 1.1 开始,应该使用 Calendar
类实现日期和时间字段之间转换,使用 DateFormat
类来格式化和解析日期字符串。Date
中的相应方法已废弃。
第一个构造函数使用当前日期和时间来初始化对象。
Data data=new Data();
第二个构造函数接收一个参数,该参数是从 1970 年 1 月 1 日起的毫秒数。
Data data=new Date(long millisec);
常用方法
获取当前日期时间
public static void main(String[] args) {
System.out.println(new Date());
}
DateFormat类
java.text.DateFormat
是日期/时间格式化子类的抽象类。
使用 SimpleDateFormat 格式化日期
public class DateDemo {
public static void main(String[] args) {
Date dNow = new Date( );
SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");
System.out.println("当前时间为: " + ft.format(dNow));
}
}
注意:在使用时要严格注意大小写
拓展:
使用printf格式化日期
示例:
public static void main(String[] args) {
Date date = new Date();
System.out.printf("全部日期和时间信息:%tc%n",date);
System.out.printf("年-月-日格式;%tF%n",date);
System.out.printf("月/日/年格式;%tD%n",date);
System.out.printf("HH:MM:SS PM格式(12时制):%tr%n",date);
System.out.printf("HH:MM:SS格式(24时制):%tT%n",date);
System.out.printf("HH:MM格式(24时制):%tR",date);
}
Calendar类
java.util.Calendar
是日历类,在Date后出现,替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。日历类就是方便获取各个时间属性的。
Calendar类对象字段类型
Calendar类对象信息的获得
public static void main(String[] args) {
Calendar c1 = Calendar.getInstance();
int year = c1.get(Calendar.YEAR);
int month = c1.get(Calendar.MONTH) + 1;
int date = c1.get(Calendar.DATE);
int hour = c1.get(Calendar.HOUR_OF_DAY);
int minute = c1.get(Calendar.MINUTE);
int second = c1.get(Calendar.SECOND);
int day = c1.get(Calendar.DAY_OF_WEEK);
System.out.println(year+" "+month+" "+date+" "+hour+" "+minute+" "+second+" "+day);
}