java中关于时间的操作

1、long,Date,Calender的相互转换

 

       可以用下面的图片很好的理解三者之间的转换

 

package javase;

import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

public class DateCast {
	public static void main(String[] args){
		long gmt = 0;
		Date date = new Date();//Date默认是当前时间
		/** 转换gmt long 到 Date */
		date.setTime(gmt);
		System.out.println(date.getYear()+1900);//1970
		System.out.println(date);
		/** 转换Date 到 Calendar */
		Calendar cal = new GregorianCalendar();//当前时间
		cal.setTime(date);
		System.out.println(cal.get(Calendar.YEAR));
		/** Calendar 转换为 Date*/
		//减少一天,本质上是在当前时间ms数上减少一天的ms数
		//一天的ms数 : 1000*60*60*24
		cal.add(Calendar.DAY_OF_YEAR, -1);//0 - 1000*60*60*24
		System.out.println(cal.get(Calendar.YEAR));
		Date d = cal.getTime();
		long l = d.getTime();
		System.out.println(l);
		System.out.println(0 - 1000*60*60*24);
	}
}
 

你可能感兴趣的:(java)