布尔表达式?a:b
布尔表达式为true结果为a,表达式为false结果为b

java三元表达式有字符强转的功能,会把后面的强转为和前面的类型一样
如果前面是int型 会把后面字符变成对应的ascii码
如果前面是char型 会把后面数字转换成对应的字符。

条件?a:b;

等同于
if(条件)
{
   a;
}else
{
   b;
}

public class A{ public static void main(String[] args) {   char a = 'a';   int b = 8;    System.out.println(false?a:b); //打印b,b是8,所以打印出8   System.out.println(false?a:8); //打印8,但a是char型的,所以打印8的char字 //符,也就是backspace   System.out.println(false?8:a); //打印int型,也就是a   System.out.println(false?b:'a'); //打印a的ASCII码    }}
    

www.mianshi.online
www.i9code.cn

本文由博客一文多发平台 OpenWrite 发布!

Aada
0 声望0 粉丝

前端工程师