我们要知道,不同国家的星期的简称或全称有很大的不同,例如,美国用Thu(Thursday)简称(全称)星期四,日本用“木”(木曜日)简称(全称)星期四,意大利用gio(giovedi)简称(全称)星期四等等。
如果想用特定地区的星期格式来表示日期中的星期,可以用format的重载方法:
format(Localelocale,格式化模式,日期列表);
其中的参数locale是一个Locale类的实例,用于表示地域。
Locale类的static常量都是Locale对象,其中US是表示美国的static常量,我们可以查阅Java API或反编译Locale类了解表示不同国家的静态常量。
例如,假设当前时间是2012-02-12,对于(%ta表示简称的星期):
Strings=String.format(Locale.US,%ta(%<tF),newDate());
那么s是Sun(2012-02-12),对于(%tA表示全称的星期):
Strings=String.format(Locale.JAPAN,%tA(%<tF),newDate());
那么s是日曜日(2012-02-12)。(日本星期一至星期日对应月曜日、火曜日、水曜日、木曜日、金曜日、土曜日、日曜日)
注意:如果format方法不使用Locale参数格式化日期,当前应用程序所在系统的地区设置是中国,那么相当于locale参数取Locale.CHINA。