如果我为地区阅读Javadocs,我就会发现联合王国存在一个不变的英国(我认为:P)
但如果我读了课堂文档,上面写着:
country参数是有效的ISO国家代码。这些代码是由ISO-3166定义的大写、双字母代码.您可以在多个站点找到这些代码的完整列表,如:http://www.iso.ch/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html
但是,在ISO 3166中,英国国标的两个字母代码
那么,为什么英国地区的countryId是英国的呢?什么iso是用于区域设置对象的countryId?
发布于 2010-12-11 14:37:30
确实是ISO 3166。常数java.util.Locale.UK的值为"en_GB"。因此,尽管它被称为英国,它有正确的价值。
发布于 2010-12-11 14:47:37
实际上,java.util.Locale.UK是一个静态常数,实际上代表着英国。但是,这个常量的Locale实例使用的ISO国家代码是"GB",ISO 3166声明。顺便说一句,也有一个所谓的ISO国家代码保留"UK“(这也请参阅维基百科 )。为什么他们把静态区域设置常数命名为"UK“而不是"GB",我只能猜测,但很可能是因为人们更习惯于"UK”而不是"GB“,尽管后者当然是ISO标准。
https://stackoverflow.com/questions/4417182
复制相似问题