代码之家  ›  专栏  ›  技术社区  ›  Philippe

有欧洲国家和语言的java枚举吗?

  •  6
  • Philippe  · 技术社区  · 14 年前

    是否有java(>5)枚举用于列出欧洲国家和语言? http://www.nationsonline.org/oneworld/european_languages.htm

    太好了!

    附:最后,我开始使用geoNames网站服务了地理名称.org. 对于我在Groovy中使用此代码段的国家:

    import org.geonames.*
    
    ToponymSearchCriteria sc = new ToponymSearchCriteria()
    sc.setContinentCode("eu")
    sc.setFeatureCode("PCLI")
    def res = WebService.search(sc)
    def countries = res.getToponyms().collect{it.countryName}.sort()
    
    4 回复  |  直到 7 年前
        1
  •  15
  •   Timwi    14 年前

    专业框架设计者不太可能在他们的库中包含这样一个枚举,因为国家(以及政治上公认的官方语言)的集合一直在变化。你要么必须打破向后兼容性,使枚举对本应工作几年以上的软件毫无用处,要么必须在枚举中保留旧的、不再被认可的国家和语言。

        2
  •  8
  •   irreputable    14 年前

    或者将其存储在数据库中;当一个新的国家诞生时,我们只需在数据库中插入一行,应用程序就会很巧妙地加载并立即使用它—而无需重新启动应用程序!万岁。

    即使是对欧洲来说,这也太过分了。我相信他们改变国家的频率不会比我们重新部署应用程序的频率更高,在任何一家现代公司,这种情况每周至少发生一次。

    没有什么是永恒的,伙计。我们能列举出太阳系中的行星吗?根据Joshua Bloch的说法,是的,他在书中提到了Java的最佳建议。据你们说,不。

    告诉冥王星。

        3
  •  7
  •   Andrew    7 年前

    也许 吧 Locale.getISOCountries() Locale.getISOLanguages() 我会帮你的。

        4
  •  1
  •   Andreas Dolk    14 年前

    每当这个URL上的内容发生变化时,您就可以重新运行autogenerator并创建一个新的enum类。

    但是请注意,枚举中的每一个更改都有可能在代码的其余部分引入错误。