概述
最近在阅读一本书,看见里面有一条这样的建议:三元操作符两边的操作数类型尽量一致,这样可以减少问题的发生。于是在eclipse写了个测试:
package org.ovuola.general.util.config;
public class OperationTest {
public static void main(String[] args) {
int i = 80;
String s = String.valueOf(i < 100 ? 90 : 100);
String s1 = String.valueOf(i < 100 ? 90 : 100.0);
System.out.println(s.equals(s1));
}
}
初一看,因为i是80小于100,条件为true返回90,再返回字符串,应该是s与s1相等呀,结果一运行发现,false.纳尼?一想,原来,问题就出在100和100.0上,第一个i两边都是int类型,而s1中两边操作数类型不一致,90是in类型,100.0是float类型,返回的是float类型,那结果当然是false.
最后
以上就是虚心高山为你收集整理的关于三元操作符操作数类型转换问题解析的全部内容,希望文章能够帮你解决关于三元操作符操作数类型转换问题解析所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复