1. java時間加減
1.用java.util.Calender來實現
Calendar calendar=Calendar.getInstance();
calendar.setTime(new Date());
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//今天的日期
calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH)+1);//讓日期加1
System.out.println(calendar.get(Calendar.DATE));//加1之後的日期Top
2.用java.text.SimpleDateFormat和java.util.Date來實現
Date d=new Date();
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
System.out.println("今天的日期:"+df.format(d));
System.out.println("兩天前的日期:" + df.format(new Date(d.getTime() - 2 * 24 * 60 * 60 * 1000)));
System.out.println("三天後的日期:" + df.format(new Date(d.getTime() + 3 * 24 * 60 * 60 * 1000)));
GregorianCalendar gc=new GregorianCalendar();
gc.setTime(new Date);
gc.add(field,value);
value為正則往後,為負則往前
field取1加1年,取2加半年,取3加一季度,取4加一周
取5加一天....
2. java 獲取本機當前時間並對小時任意加減
代碼如下:
importjava.text.SimpleDateFormat;
importjava.util.Calendar;
importjava.util.Date;
publicclassDateTestUtil{
publicstaticvoidmain(String[]args)throwsException{
SimpleDateFormatsdf=newSimpleDateFormat("yyyyMMdd");
Stringstr="20110823";
Datedt=sdf.parse(str);
CalendarrightNow=Calendar.getInstance();
rightNow.setTime(dt);
rightNow.add(Calendar.YEAR,-1);//日期減1年
rightNow.add(Calendar.MONTH,3);//日期加3個月
rightNow.add(Calendar.DAY_OF_YEAR,10);//日期加10天
Datedt1=rightNow.getTime();
StringreStr=sdf.format(dt1);
System.out.println(reStr);
}
}
註:在Calendar對象的add方法中,第二個參數為正數表示「加」,負數表示「減」。