Java Scanner useLocale() 方法

定义和用法

useLocale() 方法用于更改扫描器所使用的区域设置(Locale)。区域设置决定了数字的解释方式,包括数字的分组方式、哪个字符用作小数点等。

Locale 对象

useLocale() 方法需要 Locale 对象作为参数。Locale 对象代表一种语言或国家,并且被 Java 中的各种类用于处理数据的格式化和解释。

获取 Locale 对象的最简单方法是使用 Locale 类提供的属性之一所返回的对象。

myObj.useLocale(Locale.GERMANY));

下面列出了可用的语言和国家/地区属性。

国家/地区 语言
  • Locale.CANADA
  • Locale.CANADA_FRENCH
  • Locale.CHINA
  • Locale.FRANCE
  • Locale.GERMANY
  • Locale.ITALY
  • Locale.JAPAN
  • Locale.KOREA
  • Locale.PRC
  • Locale.TAIWAN
  • Locale.UK
  • Locale.US
  • Locale.CHINESE
  • Locale.ENGLISH
  • Locale.FRENCH
  • Locale.GERMAN
  • Locale.ITALIAN
  • Locale.JAPANESE
  • Locale.KOREAN
  • Locale.SIMPLIFIED_CHINESE
  • Locale.TRADITIONAL_CHINESE

如果你需要的国家或语言不在列表中,你可以使用语言代码和可选的国家代码来创建一个新的 Locale 对象。大多数代码由两个或三个字符组成,每个代码代表一种语言或一个国家。

Locale spanish = new Locale("es");
Locale spain = new Locale("es", "ES");

实例

从不同的区域设置读取数字:

// 创建一个扫描器对象
Scanner myObj = new Scanner("1.500.000");

// 更改区域设置
myObj.useLocale(new Locale("es"));

// 读取并显示数字
System.out.println(myObj.nextInt());

语法

public Scanner useLocale(Locale locale)

参数

参数 描述
locale 必需。Locale 对象。

技术细节

返回:

返回此方法所属的 Scanner 对象的引用,这允许链接配置方法。

例如,myObj.useLocale(Locale.GERMAN).useDelimiter(","); 就是链式调用的例子。