钥匙在资源bundle中是独一无二的



在ResourceBundle中public final String[] getStringArray(String key)的用途是什么?
属性文件中的keys不是唯一的吗?这会返回多个值吗?如果不是,为什么它返回数组?

如果您仔细阅读了ResourceBundle的文档,则说明: -

资源捆绑包属于其成员共同基础的家庭 名称,但其名称也有其他组件可以识别 他们的地区。

也: -

资源捆绑包包含密钥/值对。钥匙独特地识别 捆绑包中的环境特定对象。

因此,密钥仅在特定语言环境中是唯一的。在两个不同的环境中,您可以拥有相同的键。这就是为什么返回类型为 String[]

和方法-getStringArray: -

从此资源捆绑包或一个获取给定键的字符串数组 其父母。

ResourceBundle中的值不必是 String,值可以是任何对象。在这种情况下,您希望它是String[]

从您链接的Javadoc中:

键:

资源捆绑包包含密钥/值对。钥匙独特地识别 捆绑包中的环境特定对象。

值:

密钥始终是字符串。在此示例中,键是" okkey",并且 "取消"。在上面的示例中,值也是字符串 - "确定" 和"取消" - 但不必是。值可以是任何类型的 对象。

最新更新