【发布时间】:2013-06-01 06:25:29
【问题描述】:
我正在检索一个对象并将其转换为字符串。 .get() 可能会返回 null,这反过来会在尝试转换为字符串时崩溃。在这种情况下处理 null 的最佳方法是什么?如果它返回 null,则可能将其设置为空字符串。我试图避免为每个 .get() 编写 if 语句
String value1 = userDict.get("key1").toString();
String value2 = userDict.get("key2").toString();
String value3 = userDict.get("key3").toString();
String value4 = userDict.get("key4").toString();
编辑:
userDict 是 HashMap(字符串,对象)
【问题讨论】:
-
如果
.get()方法返回null,你希望返回什么? -
public String getDictEntry(String key) { Object value = userDict.get(key); if (value == null) { return ""; } return value.toString(); } -
userDict是什么类型?如果您可以将其放入Properties,那么您可以使用默认值调用适当的get()方法。 -
你可以用这一行写一个静态实用方法 -
return obj == null ? "" : obj.toString();。 -
userDict 是 HashMap (String, Object)