三元运算符
三元运算符是软件编程中的一个固定格式,语法是“条件表达式?表达式1:表达式2”。使用这个算法可以使调用数据时逐级筛选。
格式:如名字表示的三元运算符需要三个操作数。
语法为:条件表达式?表达式1:表达式2。
说明:问号前面的位置是判断的条件,判断结果为boolean型,为true时调用表达式1,为false时调用表达式2。
其逻辑为:“如果条件表达式成立或者满足则执行表达式1,否则执行第二个。”常用在设置默认值,例如某个值不一定存在,则判断这个值是否存在,不存在给默认值(表达式2)。
?: 便是三元运算符
相当于if–else
return mData==null?0:mData.size();的含义:
如果mData的值为空,则返回的数据为0;不为空的时候,返回的数据为mData.size(),mData的长度!
看下面的测试题:
Object obj = true ? new Integer(1) : new Double(2.0); System.out.println(obj);
输出结果:
1.0
解读:
为什么是1.0而不是输出1呢,因为三元运算符是一个整体
,这里面精度最高的Double,会进行自动类型提升,所以会输出Double类型,所以输出的结果为1.0
求三个数的最大值:
int n1 = 553; int n2 = 33; int n3 = 123; int max1 = n1 > n2 ? n1 : n2; int max2 = max1 > n3 ? max1 : n3; System.out.println(max2); //输出553
有问题欢迎在评论区指正,一个努力向上的小白!