我试图简化以下代码。
守则应执行的基本步骤如下:
一个简单的例子是:
String temp = System.getProperty("XYZ");
String result = "default";
if(temp != null && !temp.isEmpty()){
result = temp;
}
我使用三元运算符进行了另一次尝试:
String temp;
String result = isNotNullOrEmpty(temp = System.getProperty("XYZ")) ? temp : "default";
IsNotNullOrEmpty ()方法
private static boolean isNotNullOrEmpty(String str){
return (str != null && !str.isEmpty());
}
有没有可能做到这一切? 我知道我可以这样做:
String result = isNotNullOrEmpty(System.getProperty("XYZ")) ? System.getProperty("XYZ") : "default";
但是我要调用同一个方法两次。我会像这样做一些事情(这不工作) :
String result = isNotNullOrEmpty(String temp = System.getProperty("XYZ")) ? temp : "default";
我想在同一行中初始化‘ temp’String。这可能吗?或者我应该做什么?
谢谢你的建议。
提姆