public class MyCalendar { public static void main(String[] args) { Calendar cd=Calendar.getInstance(); /* * Calendar.getInstance()的解释 Gets a calendar using the default time zone and locale. The Calendar returned is based on the current time in the default time zone with the default FORMAT locale. Returns:a Calendar. */ System.out.println(cd); System.out.println(cd.get(Calendar.YEAR)); System.out.println(cd.get(Calendar.MONTH)+1);//0~11表示 1~12月份 System.out.println(cd.get(Calendar.DATE)); System.out.println(cd.get(Calendar.HOUR)); System.out.println(cd.get(Calendar.MINUTE)); System.out.println(cd.get(Calendar.SECOND)); //long num=14702311004531; //System.out.println(new Date(num)); //求20分钟后的日期 cd.add(Calendar.MINUTE,20 ); System.out.println(cd); //将一个日历转成一个Date Date date=cd.getTime(); SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss:SS: EEE"); System.out.println(sdf.format(date)); //2016-08-03 21:46 2016-08-05 11:23 求出这;两个时间之间相差的小时 以及相差的分钟 SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd HH:mm");//指定给定的日期字符串格式 try { Date d1=sdf1.parse("2016-08-03 21:46");//将给定的字符串变成一个日期对象 Date d2=sdf1.parse("2016-08-05 11:23"); System.out.println(Math.abs(Math.floor(d1.getTime()-d2.getTime())/1000/60/60)); System.out.println(Math.abs(Math.floor(d1.getTime()-d2.getTime())/1000/60)); //将日期转化成日历 cd.setTime(d2); System.out.println(cd); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }