android中有一个有用的类(至少对我而言)。 Bundle类,它允许您放置一种键值。但是值可以是不同的已建立的对象类。
例如:
Bundle mBundle = new Bundle();
mBundle.putInt("Number One", 1);
mBundle.putBoolean("True", true);
java中有一个类似的类?
答案 0 :(得分:1)
我不知道,但使用HashMap
进行复制相当容易:
public class Bundle extends HashMap<String,Object>{
public void putString(String key, String str){
put(key, str);
}
public String getString(String key){
Object o = get(key);
if(o!=null && o instanceof String)
return (String) o;
return null;
}
public void putInteger(String key, int anInt){
put(key, new Integer(anInt));
}
public Integer getInteger(String key){
Object o = get(key);
if(o!=null && o instanceof Integer)
return (Integer) o;
return null;
}
...
}
答案 1 :(得分:0)
我认为默认情况下Java不包含这种Object
,但您可以创建一个:
public class Bundle extends HashMap<String, Object> {
public void putInt(String key, int value) {
put(key, value);
}
public void putString(String key, String value) {
put(key, value);
}
public Integer getInt(String key) {
if (containsKey(key) && get(key) instanceof Integer) {
return (Integer) get(key);
} else {
return null;
}
}
public String getString(String key) {
if (containsKey(key) && get(key) instanceof String) {
return (String) get(key);
} else {
return null;
}
}
}