为什么我需要DateFormat?

时间:2014-08-01 12:07:52

标签: java date

我是初学者,我从Lynda那里得到了这段代码,我不知道为什么在这段代码中应该有DateFormat:

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

public class date {
    public static void main(String[] args){
        Date d =new Date();
        System.out.println(d);

        GregorianCalendar gc =new GregorianCalendar(2009, 1, 29 );
        gc.add(GregorianCalendar.DATE   ,1);
        Date d2 =gc.getTime();
        DateFormat df =DateFormat.getDateInstance();
        String sd =df.format(d2);
        System.out.println(sd); 
    }
}

虽然有Date d2 =gc.getTime();GregorianCalendar获得时间,但为什么我不能写         System.out.println(d2);

1 个答案:

答案 0 :(得分:4)

如果直接输出Date对象,则会隐式调用其toString函数,为您提供格式为dow mon dd hh:mm:ss zzz yyyy的字符串,该字符串可能是您想要的,也可能不是。< / p>

使用DateFormat实现可让您选择适合您任务的日期格式。该代码中使用的方法getDateInstance为您提供了一种格式化程序,它使用基于当前语言环境的格式。您可以通过许多其他方式获取DateFormat个实例,具体取决于您要执行的操作,但是对于当前语言环境中的日期,这是一个合理的通用格式化程序。