- Java.util 包类
- Java.util - 首页
- Java.util - ArrayDeque
- Java.util - ArrayList
- Java.util - Arrays
- Java.util - BitSet
- Java.util - Calendar
- Java.util - Collections
- Java.util - Currency
- Java.util - Date
- Java.util - Dictionary
- Java.util - EnumMap
- Java.util - EnumSet
- Java.util - Formatter
- Java.util - GregorianCalendar
- Java.util - HashMap
- Java.util - HashSet
- Java.util - Hashtable
- Java.util - IdentityHashMap
- Java.util - LinkedHashMap
- Java.util - LinkedHashSet
- Java.util - LinkedList
- Java.util - ListResourceBundle
- Java.util - Locale
- Java.util - Observable
- Java.util - PriorityQueue
- Java.util - Properties
- Java.util - PropertyPermission
- Java.util - PropertyResourceBundle
- Java.util - Random
- Java.util - ResourceBundle
- Java.util - ResourceBundle.Control
- Java.util - Scanner
- Java.util - ServiceLoader
- Java.util - SimpleTimeZone
- Java.util - Stack
- Java.util - StringTokenizer
- Java.util - Timer
- Java.util - TimerTask
- Java.util - TimeZone
- Java.util - TreeMap
- Java.util - TreeSet
- Java.util - UUID
- Java.util - Vector
- Java.util - WeakHashMap
- Java.util 包的其他内容
- Java.util - 接口
- Java.util - 异常
- Java.util - 枚举
- Java.util 有用资源
- Java.util - 有用资源
- Java.util - 讨论
Java Locale filter() 方法
描述
Java Locale filter(List<Locale.LanguageRange> priorityList, Collection<Locale> locales) 方法使用 RFC 4647 中定义的过滤机制返回匹配的 Locale 实例列表。这等效于当模式为 Locale.FilteringMode.AUTOSELECT_FILTERING 时,filter(List, Collection, FilteringMode) 。对给定区域设置进行此过滤操作可确保仅返回唯一的匹配区域设置。
声明
以下是 java.util.Locale.filter() 方法的声明
public static List<Locale> filter(List<Locale.LanguageRange> priorityList, Collection<Locale> locales)
参数
priorityList − 用户的语言优先级列表,其中每个语言标签都根据优先级或权重以降序排序。
locales − 用于匹配的 Locale 实例。
返回值
此方法返回用于匹配语言标签的 Locale 实例列表,这些实例根据优先级或权重以降序排序,如果没有任何匹配项,则返回空列表。该列表是可修改的。
异常
NullPointerException − 如果 priorityList 或 locales 为 null
Java Locale filter(List<Locale.LanguageRange> priorityList, Collection<Locale> locales, Locale.FilteringMode mode) 方法
描述
Java Locale filter(List<Locale.LanguageRange> priorityList, Collection<Locale> locales, Locale.FilteringMode mode) 方法使用 RFC 4647 中定义的过滤机制返回匹配的 Locale 实例列表。对给定区域设置进行此过滤操作可确保仅返回唯一的匹配区域设置。
声明
以下是 java.util.Locale.filter() 方法的声明
public static List<Locale> filter(List<Locale.LanguageRange> priorityList, Collection<Locale> locales, Locale.FilteringMode mode)
参数
priorityList − 用户的语言优先级列表,其中每个语言标签都根据优先级或权重以降序排序。
locales − 用于匹配的 Locale 实例。
mode − 过滤模式。
返回值
此方法返回用于匹配语言标签的 Locale 实例列表,这些实例根据优先级或权重以降序排序,如果没有任何匹配项,则返回空列表。该列表是可修改的。
异常
NullPointerException − 如果 priorityList 或 locales 为 null
IllegalArgumentException − 如果在指定 Locale.FilteringMode.REJECT_EXTENDED_RANGES 时,给定列表中包含一个或多个扩展语言范围
过滤区域设置列表示例
以下示例显示了 Java Locale filter(List<Locale.LanguageRange>, Collection<Locale>) 方法的用法。我们正在创建一个逗号分隔的区域设置字符串,并使用该字符串创建了一个区域设置首选项列表。现在创建了一个区域设置列表,并添加了一些区域设置。使用 filter() 方法过滤区域设置并打印结果。
package com.tutorialspoint; import java.util.ArrayList; import java.util.List; import java.util.Locale; public class LocaleDemo { public static void main(String[] args) { String tags = Locale.ENGLISH.toLanguageTag() + "," + Locale.FRENCH.toLanguageTag(); List<Locale.LanguageRange> priorityList = Locale.LanguageRange.parse(tags); List<Locale> localeList = new ArrayList<>(); localeList.add(Locale.ENGLISH); localeList.add(Locale.JAPAN); List<Locale> filteredTags = Locale.filter(priorityList, localeList); System.out.println(filteredTags); } }
输出
让我们编译并运行上述程序,这将产生以下结果:
[en]
过滤区域设置列表示例
以下示例显示了 Java Locale filter(List<Locale.LanguageRange>, Collection<Locale>) 方法的用法。我们正在创建一个不同的逗号分隔的区域设置字符串,并使用该字符串创建了一个区域设置首选项列表。现在创建了一个区域设置列表,并添加了一些区域设置。使用 filter() 方法过滤区域设置并打印结果。
package com.tutorialspoint; import java.util.ArrayList; import java.util.List; import java.util.Locale; public class LocaleDemo { public static void main(String[] args) { String tags = Locale.ENGLISH.toLanguageTag() + "," + Locale.FRENCH.toLanguageTag(); List<Locale.LanguageRange> priorityList = Locale.LanguageRange.parse(tags); List<Locale> localeList = new ArrayList<>(); localeList.add(Locale.ENGLISH); localeList.add(Locale.CANADA); localeList.add(Locale.FRENCH); List<Locale> filteredTags = Locale.filter(priorityList, localeList); System.out.println(filteredTags); } }
输出
让我们编译并运行上述程序,这将产生以下结果:
[en, en_CA, fr]
使用过滤模式过滤区域设置列表示例
以下示例显示了 Java Locale filter(List<Locale.LanguageRange>, Collection<Locale>,Locale.FilteringMode) 方法的用法。我们正在创建一个逗号分隔的区域设置字符串,并使用该字符串创建了一个区域设置首选项列表。现在创建了一个区域设置列表,并添加了一些区域设置。使用 filter() 方法过滤区域设置并打印结果。
package com.tutorialspoint; import java.util.ArrayList; import java.util.List; import java.util.Locale; public class LocaleDemo { public static void main(String[] args) { String tags = Locale.ENGLISH.toLanguageTag() + "," + Locale.FRENCH.toLanguageTag(); List<Locale.LanguageRange> priorityList = Locale.LanguageRange.parse(tags); List<Locale> localeList = new ArrayList<>(); localeList.add(Locale.ENGLISH); localeList.add(Locale.JAPAN); List<Locale> filteredTags = Locale.filter(priorityList, localeList,Locale.FilteringMode.AUTOSELECT_FILTERING); System.out.println(filteredTags); } }
输出
让我们编译并运行上述程序,这将产生以下结果:
[en]