JAVA中时间问题

来源:百度知道 编辑:UC知道 时间:2024/05/07 08:13:05
Java中有个Date类可以获得当前的时间(年-月-日),如何通过Date类获得7天前的时间(年-月-日),6个月前的时间(年-月-日)?

import java.util.*;
public class Test{

public static void main(String[] args){
Calendar c = Calendar.getInstance();
c.set(1988, 11, 15);
System.out.println(c.getTime());
c.setTimeInMillis(System.currentTimeMillis());
System.out.println(c.getTime());
}
}

输出:
Thu Dec 15 19:17:49 CST 1988
Tue Dec 16 19:17:49 CST 2008

关于类Date,API描述如下:
public class Date extends Object implements Serializable, Cloneable, Comparable<Date>类 Date 表示特定的瞬间,精确到毫秒。

在 JDK 1.1 之前,类 Date 有两个其他的函数。它允许把日期解释为年、月、日、小时、分钟和秒值。它也允许格式化和解析日期字符串。不过,这些函数的 API 不易于实现国际化。从 JDK 1.1 开始,应该使用 Calendar 类实现日期和时间字段之间转换,使用 DateFormat 类来格式化和解析日期字符串。Date 中的相应方法已废弃。

另外Calender:
public abstract class Calendar extends Object implements Serializable, Cloneable, Comparable<Calendar>Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。瞬间可用毫秒值来表示,它是距历元(即格林