如果只是要输出今天的日期
引入java.util.Date 模块后输入下列代码即可
System.out.print(new Date());
但如果要操作具体的日期(设置日期,日期前进,日期后退等)
Date这个类就有些力不从心了,但好消息是我们可以用Java.util.Calendar来操作日期。
如果说Date是当前日期,那么 Calendar更像是一个日程表。
package a0228;
import java.util.Date;
import java.util.Calendar;
public class text {
public static void main(String[] args) {
Date date1 = new Date(); //取得当天日期
System.out.print(date1+"\n");
Calendar c = Calendar.getInstance();
/*你无法取得Calendar的实例(因为Canlendar是抽象的),
即无法像new Date()一样创建一个日期的具体实例,
但是你可以取得他具体子类的实例(某种继承过Canlendar的子类)*/
c.set(2021,11,4,2,15); //设置日期
System.out.print(c.getTime()+"\n");
System.out.print(c.getTimeInMillis()+"\n"); //将当前日期以微秒形式输出
long day1 = c.getTimeInMillis();
c.add(c.HOUR_OF_DAY, 11); //加上十一天(日期中day+11)
System.out.print(c.getTime()+"\n");
c.set(c.HOUR_OF_DAY, 11); //设置日期中Day为11
System.out.print(c.getTime()+"\n");
}
}
输出结果:
import java.util.Date中的Date: 我们可以通过实例化一个Date对象来表示当天的日期
java.util.Calendar中的Calendar:但我们无法像Date一样通过实例化一个对象来表示要操作的日期
下面这个例子无法运行:
Calendar cal = new Calendar
要用下面这个静态的方法:
Calendar c = Calendar.getInstance();
这是为什么呢? 原来,我们无法取得Calendar的实例,因为Calendar是一个抽象类。但我们还是能够调用Calendar中的静态方法来取得一个实例化对象———取得他具体子类的实例(某种继承过Canlendar的子类)。通过这个实例化对象来操作日期。