我知道有一种方法可以编写java if 简短的陈述。
if
if (city.getName() != null) { name = city.getName(); } else { name="N/A"; }
有人知道如何把上面5行的缩写写成一行吗?
gopyfrb31#
我总是忘了怎么用电脑 ?: 三元运算符。这个补充答案是一个快速的提醒。它是 if-then-else .
?:
if-then-else
myVariable = (testCondition) ? someValue : anotherValue;
哪里 () 保持if ? 手段then : 手段 else 它与
()
?
:
else
if (testCondition) { myVariable = someValue; } else { myVariable = anotherValue; }
pw9qyyiw2#
1.可以删除括号和换行符。
if (city.getName() != null) name = city.getName(); else name = "N/A";
2.您可以在java中使用?:运算符。语法:
Variable = Condition ? BlockTrue : BlockElse;
因此,在代码中可以这样做:
name = city.getName() == null ? "N/A" : city.getName();
3.为布尔值指定条件结果
boolean hasName = city.getName() != null;
extra:for curious在某些语言中基于 JAVA 就像 Groovy ,可以使用以下语法:
JAVA
Groovy
name = city.getName() ?: "N/A";
接线员 ?: 分配从我们请求的变量返回的值。在这种情况下 city.getName() 如果不是的话 null .
city.getName()
null
knsnq2tg3#
简单明了:
String manType = hasMoney() ? "rich" : "poor";
长版本:
String manType; if (hasMoney()) { manType = "rich"; } else { manType = "poor"; }
或者我如何使用它来让其他代码读取器明白:
String manType = "poor"; if (hasMoney()) manType = "rich";
dsekswqp4#
你可以写 if, else if, else 简短的陈述。例如:
if, else if, else
Boolean isCapital = city.isCapital(); //Object Boolean (not boolean) String isCapitalName = isCapital == null ? "" : isCapital ? "Capital" : "City";
以下简称:
Boolean isCapital = city.isCapital(); String isCapitalName; if(isCapital == null) { isCapitalName = ""; } else if(isCapital) { isCapitalName = "Capital"; } else { isCapitalName = "City"; }
mwg9r5ms5#
方法是使用三元运算符:
name = city.getName() == null ? city.getName() : "N/A"
但是,我相信你上面的代码中有一个拼写错误,你的意思是:
if (city.getName() != null) ...
mfpqipee6#
在java 8中:
name = Optional.ofNullable(city.getName()).orElse("N/A")
e4yzc0pl7#
避免打电话 .getName() 我会用两次
.getName()
name = city.getName(); if (name == null) name = "N/A";
6ljaweal8#
使用三元运算符:
name = ((city.getName() == null) ? "N/A" : city.getName());
我想你把条件倒过来了-如果它是空的,你希望它的值是“n/a”。如果城市为空呢?如果那样的话,你的密码会出错。我再加一张支票:
name = ((city == null) || (city.getName() == null) ? "N/A" : city.getName());
lbsnaicq9#
name = city.getName()!=null?city.getName():"N/A"
qacovj5a10#
您可以在java中使用三元运算符。语法:
Condition ? Block 1 : Block 2
所以在你的代码里你可以这样做,
有关更多信息,请参阅此资源。
xnifntxz11#
这是单行代码
name = (city.getName() != null) ? city.getName() : "N/A";
下面是它的工作原理示例,在js文件中运行下面的代码并理解结果。这个 ("Data" != null) 情况和正常情况一样 if() 以及 "Data" 此条件变为真时的语句。这个 " : " 扮演别人的角色 "N/A" 是else条件的语句。希望这能帮助你理解其中的逻辑。
("Data" != null)
if()
"Data"
" : "
"N/A"
name = ("Data" != null) ? "Data" : "N/A"; console.log(name);
yvt65v4c12#
name = ( (city.getName() == null)? "N/A" : city.getName() );
首先是条件 (city.getName() == null) 已检查。如果是,那么 "N/A" 被指定为name或simply name="N/A" 或者从 city.getName() 分配给名称,即。 name=city.getName() .注意事项:条件在括号中,后面跟一个问号。这就是我写作的原因 (city.getName() == null)? . 这里的问号就在条件后面。很容易看/读/猜!冒号左边的值( : )当条件为真时,冒号左边的值被赋值,否则冒号右边的值被赋值给变量。以下是参考资料:http://www.cafeaulait.org/course/week2/43.html
(city.getName() == null)
name="N/A"
name=city.getName()
(city.getName() == null)?
0aydgbwb13#
yquaqz1814#
那个?:java中的运算符在java中,您可以编写:
if (a > b) { max = a; } else { max = b; }
将单个变量设置为基于单个条件的两个状态之一是if-else的常见用法,如果为它设计了一个快捷方式,条件运算符,?::。使用条件运算符,您可以在一行中重写上述示例,如下所示:
max = (a > b) ? a : b;
(a>b)?a:乙;返回两个值(a或b)之一的表达式。测试条件(a>b)。如果为true,则返回第一个值a。如果为false,则返回第二个值b。返回的值取决于条件测试,a>b。条件可以是任何返回布尔值的表达式。
wgeznvg715#
使用org.apache.commons.lang3.stringutils:
name = StringUtils.defaultString(city.getName(), "N/A");
15条答案
按热度按时间gopyfrb31#
我总是忘了怎么用电脑
?:
三元运算符。这个补充答案是一个快速的提醒。它是if-then-else
.哪里
()
保持if
?
手段then
:
手段else
它与pw9qyyiw2#
1.可以删除括号和换行符。
2.您可以在java中使用?:运算符。
语法:
因此,在代码中可以这样做:
3.为布尔值指定条件结果
extra:for curious
在某些语言中基于
JAVA
就像Groovy
,可以使用以下语法:接线员
?:
分配从我们请求的变量返回的值。在这种情况下city.getName()
如果不是的话null
.knsnq2tg3#
简单明了:
长版本:
或者我如何使用它来让其他代码读取器明白:
dsekswqp4#
你可以写
if, else if, else
简短的陈述。例如:以下简称:
mwg9r5ms5#
方法是使用三元运算符:
但是,我相信你上面的代码中有一个拼写错误,你的意思是:
mfpqipee6#
在java 8中:
e4yzc0pl7#
避免打电话
.getName()
我会用两次6ljaweal8#
使用三元运算符:
我想你把条件倒过来了-如果它是空的,你希望它的值是“n/a”。
如果城市为空呢?如果那样的话,你的密码会出错。我再加一张支票:
lbsnaicq9#
qacovj5a10#
您可以在java中使用三元运算符。
语法:
所以在你的代码里你可以这样做,
有关更多信息,请参阅此资源。
xnifntxz11#
这是单行代码
下面是它的工作原理示例,在js文件中运行下面的代码并理解结果。这个
("Data" != null)
情况和正常情况一样if()
以及"Data"
此条件变为真时的语句。这个" : "
扮演别人的角色"N/A"
是else条件的语句。希望这能帮助你理解其中的逻辑。yvt65v4c12#
首先是条件
(city.getName() == null)
已检查。如果是,那么"N/A"
被指定为name或simplyname="N/A"
或者从city.getName()
分配给名称,即。name=city.getName()
.注意事项:
条件在括号中,后面跟一个问号。这就是我写作的原因
(city.getName() == null)?
. 这里的问号就在条件后面。很容易看/读/猜!冒号左边的值(
:
)当条件为真时,冒号左边的值被赋值,否则冒号右边的值被赋值给变量。以下是参考资料:http://www.cafeaulait.org/course/week2/43.html
0aydgbwb13#
yquaqz1814#
那个?:java中的运算符
在java中,您可以编写:
将单个变量设置为基于单个条件的两个状态之一是if-else的常见用法,如果为它设计了一个快捷方式,条件运算符,?::。使用条件运算符,您可以在一行中重写上述示例,如下所示:
(a>b)?a:乙;返回两个值(a或b)之一的表达式。测试条件(a>b)。如果为true,则返回第一个值a。如果为false,则返回第二个值b。返回的值取决于条件测试,a>b。条件可以是任何返回布尔值的表达式。
wgeznvg715#
使用org.apache.commons.lang3.stringutils: