answer by Shashank Kadne 是正确的。
乔达时间
仅供参考,使用Joda-Time 2.3 库,这项工作更简单、更干净。
Joda-Time 使用基于 1 的合理计数来处理以下事情:
-
一年中的月份
一月 = 1,二月 = 2,依此类推。
-
星期几
星期一 = 1,星期日 = 7。(标准 ISO 8601 星期)
Joda-Time DateTime 对象知道自己的时区,这与 java.util.Date 对象不同。
Joda-Time 利用指定的Locale 对象来呈现本地化字符串。
示例代码
// Specify a time zone rather than rely on default.
DateTimeZone timeZone = DateTimeZone.forID( "Europe/Paris" );
int year = 2014;
int month = 1; // Sensible one-based counting. January = 1, February = 2, …
int dayOfMonth = 2;
DateTime dateTime = new DateTime( year, month, dayOfMonth, 0, 0, 0, timeZone );
// Day-of-week info.
int dayOfWeekNumber = dateTime.getDayOfWeek(); // Standard week (ISO 8601). Monday = 1, Sunday = 7.
DateTime.Property dayOfWeekProperty = dateTime.dayOfWeek();
String dayOfWeekName_Short = dayOfWeekProperty.getAsShortText( Locale.FRANCE );
String dayOfWeekName_Long = dayOfWeekProperty.getAsText( Locale.FRANCE );
转储到控制台...
System.out.println( "dateTime: " + dateTime );
System.out.println( "dayOfWeekNumber: " + dayOfWeekNumber );
System.out.println( "dayOfWeekName_Short: " + dayOfWeekName_Short );
System.out.println( "dayOfWeekName_Long: " + dayOfWeekName_Long );
运行时……
dateTime: 2014-01-02T00:00:00.000+01:00
dayOfWeekNumber: 4
dayOfWeekName_Short: jeu.
dayOfWeekName_Long: jeudi
没有时间和时区
如果您真的只想要没有任何时间或时区的日期,请编写类似的代码,但使用 LocalDate 类。