在java中检查空引用的乐观方式
这个问题在这里已经有了答案:
add("x_Amount", amount);
add("x_Currency_Code", currency);
add("x_Exp_Date", expDate);
void add(String name, String value)
{
if(value!=null && !value.isEmpty())
AIMRequest.put(name, value);
}
根据您if
的,条件你是比较String
S,所以请的方法:
public boolean isValid(String s) {
return s != null && s != "" && !s.isEmpty();
}
如果你想用这个方法比较对象,改变签名public boolean isValid(Object o)
,
你的代码将会是这样干净的:
if(isValid(amount))
AIMRequest.put("x_Amount", amount);
if(isValid(currency)
AIMRequest.put("x_Currency_Code", currency);
if(isValid(expDate)
AIMRequest.put("x_Exp_Date", expDate);
但是,如果您可以收集array
所有对象:
public boolean isValid(Object[] os) {
for (String s : os) {
boolean isValid = s != null && s != "" && !s.isEmpty();
if (!isValid) return false;
}
return true;
}
该方法将接受一个对象数组,并通过它们循环来检查任何未定义的对象或null或空。
public Object[] checkForNull(Object[] objects){
for(int i = 0;i<objects.length;i++){
//check all conditions for null empty or no data.
if(objects[i]!= null && objects!= "" && !objects[i].isEmpty())
object[i] = "UNDEFINED";
return objects[];
}
所以现在你可以通过所有的对象你想检查空或未定义或null,然后在你想要使用所有你需要做的事情是检查: if(object == "UNDEFINED")
希望能帮助到你。
链接地址: http://www.djcxy.com/p/13303.html