java.util.Calendar.getDisplayNames() 方法返回一个包含给定样式的日历字段的所有名称的 Map和区域设置及其相应的字段值。例如,如果此日历是 GregorianCalendar,则返回的映射将包含"Jan"到 JANUARY、"Feb"到 FEBRUARY 等(在英语区域设置中采用简短样式)。
语法
public Map<String,Integer> getDisplayNames(int field,
int style,
Locale locale)
参数
字段 | 指定返回显示名称的日历字段。 |
style | 指定应用于字符串表示的样式; SHORT_FORMAT (SHORT)、SHORT_STANDALONE、LONG_FORMAT (LONG)、LONG_STANDALONE、NARROW_FORMAT 或 NARROW_STANDALONE 之一。 |
区域设置 | 指定显示名称的区域设置。 |
返回值
返回包含样式和区域设置及其字段的所有显示名称的map值,如果没有为字段定义显示名称,则为 null。
异常
- 如果区域设置为 null,则抛出 NullPointerException
- 如果字段或样式无效,或者此日历不宽松并且任何日历字段具有无效值,则抛出 IllegalArgumentException
示例:
在下面的示例中,java.util.Calendar.getDisplayNames() 方法返回一个包含给定样式和区域设置的日历字段的所有名称的 Map及其相应的字段值。
import java.util.*;
public class MyClass {
public static void main(String[] args) {
//创建指定日期的Calendar对象
Calendar Cal = new GregorianCalendar(2015, 1, 25);
//打印日历
System.out.println("The Calendar is: " + Cal.getTime());
//创建一个新的语言环境
Locale loc = new Locale("EN", "US");
//获取包含 DAY_OF_WEEK 字段的所有map的 Map
Map<String, Integer> MyMap =
Cal.getDisplayNames(Calendar.DAY_OF_WEEK, Calendar.SHORT_FORMAT, loc);
System.out.println("MyMap Contains: " + MyMap);
}
}
上述代码的输出将是:
The Calendar is: Wed Feb 25 00:00:00 UTC 2015
MyMap Contains: {Thu=5, Tue=3, Wed=4, Sat=7, Fri=6, Sun=1, Mon=2}