-1

在 Java 标准库中,是否有类似于HashMap原始和通用类型的 getter/setter 方法但具有便利性的东西,例如getString()?类似于BundleAndroid 中的东西。

4

3 回答 3

2

没有。你可以自己写。但是,我不确定这里的真正价值是什么?

于 2013-08-18T01:08:17.587 回答
2

正如@Pangea 所说,Java SE 类库中没有这样的类,而 AFAIK 在任何主流扩展库中都没有。

PreferencesAPI 看起来很相似,但是 API 带有偏好层次结构和偏好持久性机制的“额外包袱” 。如果您实际上不想实现偏好机制,那么这可能是错误的方法。

您最好的选择是创建HashMap<K, V>or的自定义子类型,HashMap<String, V>然后添加便利方法。但是,令我震惊的是,您在这里所做的可能是糟糕的设计……在 Java 中。您可能会遇到动态类型的脆弱性(例如,尝试访问不存在的“属性”)而没有好处。

于 2013-08-18T02:30:13.710 回答
1

泛型与自动装箱相结合可能可以完成这项工作:

如果您将地图声明为 egMap<Integer,Integer>那么它的 put 需要 Integer 参数,并且会根据需要将 int 参数装箱到 Integer 。类似地,它的 get 接受一个 Integer 参数,它可以是一个装箱的 int。实际上,它返回一个可以自动拆箱为 int 的 Integer。

于 2013-08-18T01:15:25.987 回答