三目运算:三元表达式
条件?结果1:结果2
a>b?a:b//如果a>b成立,结果为a,否则结果为b
相当于一个:
if(){
}else{
}
*只有if、else两种可能的情况
a和b到底以何种类型输出:
public class Task {
public static void main(String[] args) {
char a = 'b';
int b = 8;
System.out.println(false?a:b);//8
System.out.println(false?a:8);//字符
System.out.println(false?8:a);//b
System.out.println(false?b:'a');//97
System.out.println(true?a:b);//97
System.out.println(true?a:8);//b
System.out.println(true?8:a);//字符
System.out.println(true?b:'a');//8
//无类型的(常量)服从有类型的,char服从数值类型
//数值类型>char>常量
}
}
转载于:https://blog.51cto.com/11717974/1903063