import java.text.DateFormat;
import java.util.Calendar;
import java.util.Date;


public class DateTest {
	 public void getTimeByDate(){
	        Date date = new Date();
	        DateFormat df1 = DateFormat.getDateInstance();//日期格式,精确到日
	        System.out.println(df1.format(date));//2016-1-8
	        DateFormat df2 = DateFormat.getDateTimeInstance();//可以精确到时分秒
	        System.out.println(df2.format(date));//2016-1-8 14:54:20
	        DateFormat df3 = DateFormat.getTimeInstance();//只显示出时分秒
	        System.out.println(df3.format(date));//14:54:20
	        DateFormat df4 = DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL); //显示日期,周,上下午,时间(精确到秒)
	        System.out.println(df4.format(date));//2016年1月8日 星期五 下午02时54分20秒 GMT+08:00
	        DateFormat df5 = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG); //显示日期,上下午,时间(精确到秒)
	        System.out.println(df5.format(date));//2016年1月8日 下午02时54分20秒
	        DateFormat df6 = DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT); //显示日期,上下午,时间(精确到分)
	        System.out.println(df6.format(date));//16-1-8 下午2:54
	        DateFormat df7 = DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM); //显示日期,时间(精确到分)
	        System.out.println(df7.format(date));//2016-1-8 14:54:20
	    }
	 public void getTimeByCalendar(){
	        Calendar cal = Calendar.getInstance();
	        int year = cal.get(Calendar.YEAR);//获取年份
	        int month=cal.get(Calendar.MONTH);//获取月份
	        int day=cal.get(Calendar.DATE);//获取日
	        int hour=cal.get(Calendar.HOUR);//小时
	        int minute=cal.get(Calendar.MINUTE);//分           
	        int second=cal.get(Calendar.SECOND);//秒
	        int WeekOfYear = cal.get(Calendar.DAY_OF_WEEK);//一周的第几天
	        //现在的时间是:公元2016年0月8日      2时54分21秒       星期6
	        System.out.println("现在的时间是:公元"+year+"年"+month+"月"+day+"日      "+hour+"时"+minute+"分"+second+"秒       星期"+WeekOfYear);
	    }
	 //计算两个时间之间间隔的天数
	 public int getIntervalDays(Calendar startday,Calendar endday){
		 if(startday.after(endday)){
			 Calendar cal=startday;
			 startday=endday;
			 endday=cal;
		 }
		 long sl=startday.getTimeInMillis();
		 long el=endday.getTimeInMillis();
		 long ei=el-sl;
		 return (int)(ei/(1000*60*60*24));
	 }
	//计算两个时间之间间隔的天数
	 public int getIntervalDays(Date startday,Date endday){
		 if(startday.after(endday)){
			 Date cal=startday;
			 startday=endday;
			 endday=cal;
		 }
		 long sl=startday.getTime();
		 long el=endday.getTime();
		 long ei=el-sl;
		 return (int)(ei/(1000*60*60*24));
	 }
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		DateTest dt = new DateTest();
		dt.getTimeByDate();
        System.out.println("****************************");
        dt.getTimeByCalendar();

	}

}