该javadocs中基本涵盖这一点。
为
locale.getCountry()您找到:
返回此语言环境的国家/地区代码,该代码可以是 空字符串 ,大写的ISO 3166 2字母代码或UN M.49 3位数代码。
并且为
locale.getDisplayCountry()您找到:
返回适合显示给用户的语言环境所在国家/地区的名称。如果可能,返回的名称将被本地化为默认语言环境。例如,如果语言环境为fr_FR,默认语言环境为en_US,则getDisplayCountry()将返回“
France”;如果语言环境为en_US,默认语言环境为fr_FR,则getDisplayCountry()将返回“ Etats-
Unis”。如果返回的名称无法针对默认语言环境进行本地化(例如,对于克罗地亚,我们没有日语名称),则此函数将退回到英语名称上,并使用ISO代码作为最后输入值。如果语言环境未指定国家/地区,则此函数返回空字符串。
您无法“看到”的那个没有ISO代码,而是回溯到那,因为它无法本地化为您的语言环境,也没有英文名称(或者,没有国家/地区)指定)。对您来说,同时使用空字符串是完全有效的(尽管,这毫无用处)。



