Java连续字符串中的条件运算符_极悦注册
专注Java教育14年 全国咨询/投诉热线:444-1124-454
极悦LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 Java连续字符串中的条件运算符

Java连续字符串中的条件运算符

更新时间:2020-07-22 16:10:31 来源:极悦 浏览1989次

知道为什么以下程序抛出一个NPE

public static void main(String[] args) {
    Integer testInteger = null;
    String test = "test" + testInteger == null ? "(null)" : testInteger.toString();
}

而这个

public static void main(String[] args) {
    Integer testInteger = null;
    String test = "test" + (testInteger == null ? "(null)" : testInteger.toString());
}

没有.这当然是一个优先问题,我很好奇连接如何工作.

解决方法

这是了解operator precedence的重要性的一个例子.

您需要括号,否则解释如下:

String test = ("test" + testInteger) == null ? "(null)" : testInteger.toString();

请参阅here了解操作符列表及其优先级.还要注意该页面顶部的警告:

Note:Use explicit parentheses when there is even the possibility of confusion.

以上就是极悦java培训机构的小编针对“Java连续字符串中的条件运算符”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>