- java.lang.Object
-
- java.lang.Enum<Locale.FilteringMode>
-
- java.util.Locale.FilteringMode
-
- 实现的所有接口
-
Serializable
,Comparable<Locale.FilteringMode>
- Enclosing class:
- Locale
public static enum Locale.FilteringMode extends Enum<Locale.FilteringMode>
此枚举提供常量以选择用于区域设置匹配的过滤模式。 有关详细信息,请参阅RFC 4647 Matching of Language Tags 。例如,考虑两个语言优先级列表,每个列表仅包含一个语言范围和一组以下语言标记:
de (German) de-DE (German, Germany) de-Deva (German, in Devanagari script) de-Deva-DE (German, in Devanagari script, Germany) de-DE-1996 (German, Germany, orthography of 1996) de-Latn-DE (German, in Latin script, Germany) de-Latn-DE-1996 (German, in Latin script, Germany, orthography of 1996)
过滤方法的行为如下: Filtering method behavior Filtering Mode Language Priority List:"de-DE"
Language Priority List:"de-*-DE"
AUTOSELECT_FILTERING
Performs basic filtering and returns"de-DE"
and"de-DE-1996"
. Performs extended filtering and returns"de-DE"
,"de-Deva-DE"
,"de-DE-1996"
,"de-Latn-DE"
, and"de-Latn-DE-1996"
.EXTENDED_FILTERING
Performs extended filtering and returns"de-DE"
,"de-Deva-DE"
,"de-DE-1996"
,"de-Latn-DE"
, and"de-Latn-DE-1996"
. Same as above.IGNORE_EXTENDED_RANGES
Performs basic filtering and returns"de-DE"
and"de-DE-1996"
. Performs basic filtering and returnsnull
because nothing matches.MAP_EXTENDED_RANGES
Same as above. Performs basic filtering and returns"de-DE"
and"de-DE-1996"
because"de-*-DE"
is mapped to"de-DE"
.REJECT_EXTENDED_RANGES
Same as above. ThrowsIllegalArgumentException
because"de-*-DE"
is not a valid basic language range.
-
-
Enum Constant Summary
Enum Constants Enum Constant 描述 AUTOSELECT_FILTERING
指定基于由语言范围组成的给定语言优先级列表的自动过滤模式。EXTENDED_FILTERING
指定扩展过滤。IGNORE_EXTENDED_RANGES
指定基本过滤:请注意,忽略给定语言优先级列表中包含的任何扩展语言范围。MAP_EXTENDED_RANGES
指定基本过滤:如果给定的语言优先级列表中包含任何扩展语言范围,它们将映射到基本语言范围。REJECT_EXTENDED_RANGES
指定基本过滤:如果给定的语言优先级列表中包含任何扩展语言范围,则拒绝该列表,并且过滤方法将引发IllegalArgumentException
。
-
-
-
Enum Constant Detail
-
AUTOSELECT_FILTERING
public static final Locale.FilteringMode AUTOSELECT_FILTERING
指定基于由语言范围组成的给定语言优先级列表的自动过滤模式。 如果所有范围都是基本范围,则选择基本过滤。 否则,选择扩展过滤。
-
EXTENDED_FILTERING
public static final Locale.FilteringMode EXTENDED_FILTERING
指定扩展过滤。
-
IGNORE_EXTENDED_RANGES
public static final Locale.FilteringMode IGNORE_EXTENDED_RANGES
指定基本过滤:请注意,忽略给定语言优先级列表中包含的任何扩展语言范围。
-
MAP_EXTENDED_RANGES
public static final Locale.FilteringMode MAP_EXTENDED_RANGES
指定基本过滤:如果给定的语言优先级列表中包含任何扩展语言范围,它们将映射到基本语言范围。 具体而言,以子标签"*"
开头的语言范围被视为语言范围"*"
。 例如,"*-US"
被视为"*"
。 如果"*"
不是第一"*"
标签,则删除"*"
和额外"-"
。 例如,"ja-*-JP"
映射到"ja-JP"
。
-
REJECT_EXTENDED_RANGES
public static final Locale.FilteringMode REJECT_EXTENDED_RANGES
指定基本过滤:如果给定的语言优先级列表中包含任何扩展语言范围,则拒绝该列表,并且过滤方法将引发IllegalArgumentException
。
-
-
方法详细信息
-
values
public static Locale.FilteringMode[] values()
按照声明的顺序返回一个包含此枚举类型常量的数组。 此方法可用于迭代常量,如下所示:for (Locale.FilteringMode c : Locale.FilteringMode.values()) System.out.println(c);
- 结果
- 包含此枚举类型常量的数组,按声明的顺序排列
-
valueOf
public static Locale.FilteringMode valueOf(String name)
返回具有指定名称的此类型的枚举常量。 该字符串必须与用于声明此类型中的枚举常量的标识符完全匹配。 (不允许使用无关的空白字符。)- 参数
-
name
- 要返回的枚举常量的名称。 - 结果
- 具有指定名称的枚举常量
- 异常
-
IllegalArgumentException
- 如果此枚举类型没有指定名称的常量 -
NullPointerException
- 如果参数为null
-
-