时间的表示是从1970年1月1日为远点,一般以毫秒来计算
import java.util.Date;
public class TestDate {
/*
时间的表示是从1970年1月1日为远点,一般以毫秒来计算
*/
public static void main(String[] args) {
long a=System.currentTimeMillis();//来获取当前的时刻,以毫秒计
Date d=new Date();//当前电脑的时刻
System.out.println(d);
System.out.println(d.getTime());//获取当前毫秒数
Date b=new Date(2000);//从1970年1月1日经过2000毫秒后的时刻
System.out.println(b);//由于时区影响因此得到上午八点
System.out.println(d.after(b));//d时刻是否在b时刻之后
//以后遇到日期处理,使用Canlendar类。Date类很多方法都被弃用了
}
}
Calendar类也是一个抽象类,为我们提供了关于日期计算的相关功能,比如年月日时分秒的展示和计算
GregorianCalendar是Calendar的一个具体子类,提供了世界上大多数国家/地区使用的标准日历系统
注意:月份的表示,0-一月…11-十二月
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class TestCalendarAndGregorianCalendar {
/*
Calendar类也是一个抽象类,为我们提供了关于日期计算的相关功能,比如年月日时分秒的展示和计算
GregorianCalendar是Calendar的一个具体子类,提供了世界上大多数国家/地区使用的标准日历系统
注意:月份的表示,0-一月...11-十二月
*/
public static void main(String[] args) {
//获得日期
Calendar calendar=new GregorianCalendar(2999,10,9,22,10,50);
System.out.println(calendar);
System.out.println(calendar.get(Calendar.YEAR));
System.out.println(calendar.get(Calendar.MONTH));//0-一月...11-十二月
System.out.println(calendar.get(Calendar.DAY_OF_WEEK));//1-周日,2-周一...7-周一
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
//设置日期的相关元素
Calendar calendar2=new GregorianCalendar();//默认执行时间
System.out.println(calendar2);
calendar2.set(Calendar.YEAR,2025);
System.out.println(calendar2);
//日期的计算
Calendar calendar3=new GregorianCalendar();
System.out.println(calendar3.get(Calendar.DAY_OF_YEAR));
calendar3.add(Calendar.DATE,100);
System.out.println(calendar3.get(Calendar.DAY_OF_YEAR));
calendar3.add(Calendar.YEAR,-100);
System.out.println(calendar3.get(Calendar.YEAR));
//日期对象和时间对象的转化
Calendar c=new GregorianCalendar();
Date d4=c.getTime();
System.out.println(d4);
Calendar c1=new GregorianCalendar();
c1.setTime(new Date());
printCalendar(c1);
}
public static void printCalendar(Calendar a){
//打印格式:xxxx年xx月xx日 xx时xx分xx秒 周几
int year=a.get(Calendar.YEAR);
int month=a.get(Calendar.MONTH)+1;
int date=a.get(Calendar.DAY_OF_MONTH);
int hour=a.get(Calendar.HOUR_OF_DAY);
int minute=a.get(Calendar.MINUTE);
int second=a.get(Calendar.SECOND);
int weekday=a.get(Calendar.DAY_OF_WEEK)-1;
String dayweek=weekday==0?"日":weekday+"";
System.out.println(year+"年"+month+"月"+date+"日"+" "+hour+"时"+minute+"分"+second+"秒"+" "+"周"+dayweek);
}
}