日期:2014-05-20  浏览次数:20624 次

Date today=new Date() 获取的不是现在的日期么??
Java code
import java.util.Date;

public class ttt {
    public static void main(String[] args) {
        Date today=new Date();
        String date=today.getYear()+"-"+today.getMonth()+"-"+today.getDay();
        System.out.println("现在的日期是"+date);
    }
}




这样不应该是输出今天的日期么?也就是说,Date today=new Date();不应该是以今天的日期新建Date实例么??

我的电脑运行结果为 现在的日期是112-5-3

我系统时间没有问题

------解决方案--------------------
哎。getDay() 是获取星期的。today.getMonth() 是星期六,但是是用5代表6月的,也就是说 一月从0开始。

------解决方案--------------------
不能这样用
你要输出指格式的日期字符串用SimpleDateFormat进行格式化
Java code

Date today=new Date();
        String date= new SimpleDateFormat("yy-mm-dd").format(today);
        System.out.println("现在的日期是"+date);

------解决方案--------------------
Java code
@Deprecated
    public int getYear() {
        return normalize().getYear() - 1900;
    }
    @Deprecated
    public int getMonth() {
    return normalize().getMonth() - 1; // adjust 1-based to 0-based
    }
    @Deprecated
    public int getDay() {
    return normalize().getDayOfWeek() - gcal.SUNDAY;
    }