模块  java.base
软件包  java.util

Enum Locale.FilteringMode

  • 实现的所有接口
    SerializableComparable<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 returns null 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. Throws IllegalArgumentException because "de-*-DE" is not a valid basic language range.
    从以下版本开始:
    1.8
    另请参见:
    Locale.filter(List, Collection, FilteringMode)Locale.filterTags(List, Collection, FilteringMode)
    • 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