读书人

Java 三元运算符( ?) 的诙谐

发布时间: 2012-09-10 11:02:32 作者: rapoo

Java 三元运算符( ?:) 的幽默

三元运算符又称为条件运算符,相当于if else的效果。其作用是简化操作和优化代码显示。

以前一直在C#中使用,得到的结果一直是如果两个数据类型不同,则会进行向上转型,如char-->int

运行这段结果,得到的却是:X88,可以看到三元运算符的结果,与第二个表达式的类型有直接的关系。

对于第一个表达式:true ? x :0 因为x的类型为char,当表达式为真的时候,结果类型为char,得到的结果是X。

对于第二个表达式:false ? i : x,因为i的类型为整型,当表达式为false的时候,结果类型为int,于是char向上转型为整型,输出88。

?

结论:

1、在不同的开发语言中,一定要注意相同的语句,可能会存在不同的结果。

2、尽量避免在条件运算符两侧,使用不同的数据类型。

读书人网 >编程

热点推荐