三元运算符基础表达式:(条件表达式)?结果1:结果2
三元运算符分为三部分,第一部分是运算条件,当运算结果为True时,输出结果1;为False时,输出结果2,在三元运算符中,判断的结果为bool型。
三元运算符可以看作简化的if-else语句,例如:判断a是否大于2,如果是输出10,如果不是输出20,用if-else写如下:
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
if(n>2) {
System.out.println(10);
}
else {
System.out.println(20);
}
而用三元运算符写如下:
System.out.println("请输入一个数:");
Scanner sc=new Scanner(System.in);
int a=sc.nextInt();
int b;
b=a>2?10:20;
System.out.println("b="+b);
综上,使用三元运算符可以有效的简化if-else,但是三元运算符有局限性,因为三元运算符运算必须有运算结果,如果没有结果将无法输出。
下面,我们使用一道简单的题作为三元运算符的简单练习。
问题:判断三个数的大小,要求使用三元运算符进行运算
int a=100,b=20,c=3,max;
max = a>b?(a>c?a:c):(b<c?c:b);
System.out.println("max="+max);