我最近才发现java.util.Properties
课,并且非常喜欢它。由于属性只是键值对的简单映射,是否有一种方便的方法可以向它们添加一些描述字符串并调用它,例如像properties.get("key").getDescription()
?
答案 0 :(得分:4)
没有。您可以做的最接近的是具有命名约定,例如
key=value
key.description=value
然后使用
properties.get("key.description")
您当然可以通过将属性包装到您自己的类中来隐藏该约定:
class Entry {
private String value;
private String description;
...
}
class Config {
private Properties properties;
public Entry get(String key) {
// get the value for key
// get the value for key.description
// create and return an Entry
}
}
但如果你真的想要结构化数据,你应该使用JSON,YAML或XML而不是属性。
答案 1 :(得分:1)
此properties.get(“key”)。getDescription()不起作用,因为properties.get(“key”)返回String值。所以你只能调用它上面的String相关函数。
你能做的就是
key.description=value
然后使用
调用它properties.get("key.description")