版权声明
1. 本站文章和资源均来自互联网收集和整理,本站不承担任何责任及版权问题。
2. 相关版权归作者及其公司所有,仅供学习研究用途,请勿用于商业目的。
3. 若侵犯您的版权,请发邮件至webmaster@ishare1.cn联系我们,我们确认后将立即删除。

格式:数据类型 变量名 = 布尔类型表达式?结果1:结果2
运算原理:
布尔类型表达式结果是true,三元运算符整体结果为结果1,赋值给变量。
布尔类型表达式结果是false,三元运算符整体结果为结果2,赋值给变量。
相关视频教程推荐:java学习
示例如下:
package test;
public class Test {
public static void main(String[] args) {
// 方式一
Object o1 = true ? new Integer(1) : new Double(2.0);
// 方式二
Object o2;
if (true)
o2 = new Integer(1);
else
o2 = new Double(2.0);
System.out.println(o1);
System.out.println(o2);
// 方式三
Integer i = new Integer(1);
if (i.equals(1))
i = null;
Double d = new Double(2.0);
Object o3 = true ? i : d; // 空指针异常
System.out.println(o3);
}
}
运算结果:

在印象中一和二两种方式应该是等效的,但是得到的结果却不一样。由此可见,三目运算符会在有需要的情况下,对操作数进行类型提升。注意:只是在有需要的时候,否则会抛出空指针异常。
更多相关文章推荐:java编程入门
爱分享




