我得到map了结果,当我获得价值时,我需要将其转换为String如下所示:
a.setA(map.get("A").toString());
Run Code Online (Sandbox Code Playgroud)
但如果它返回而null不是它抛出nullPointerException,那么我用下面的方法改变它:
a.setA(map.get("A")!=null?map.get("A").toString():"");
Run Code Online (Sandbox Code Playgroud)
但是我有20多个字段,所以我只想这样做:
String val = "";
a.setA(val=map.get("A")!=null?val.toString():"");
Run Code Online (Sandbox Code Playgroud)
但它返回blank所有时间,我只是简单的问题是我不能使用这样的变量?或者还有其他选择吗?
JB *_*zet 20
使用方法.并避免get()两次打电话:
private String valueToStringOrEmpty(Map<String, ?> map, String key) {
Object value = map.get(key);
return value == null ? "" : value.toString();
}
Run Code Online (Sandbox Code Playgroud)
...
String a = valueToStringOrEmpty(map, "A");
String b = valueToStringOrEmpty(map, "B");
Run Code Online (Sandbox Code Playgroud)
现在重复一遍:"我不会重复代码".
| 归档时间: |
|
| 查看次数: |
34687 次 |
| 最近记录: |