JAVA渣渣感悟——三目运算符(三元运算符)的注意事项

本文详细介绍了三目运算符的使用方法及注意事项,包括其基本语法、如何正确使用三目运算符来避免常见的语法错误,并提供了一个实际的例子来展示如何在Java中正确地使用它。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.三目运算符表达式

三目运算符表达式为b?x:y,先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算结果为y的值。一个条件表达式绝不会既计算x,又计算y。条件运算符是右结合的,也就是说,从右向左分组计算。例如,a?b:c?d:e将按a?b:(c?d:e)执行。

<表达式1>?<表达式2>:<表达式3>; "?"运算符的含义是: 先求表达式1的值, 如果为真, 则执行表达式2,并返回表达式2的结果 ; 如果表达式1的值为假, 则执行表达式3 ,并返回表达式3的结果。

 

2.注意事项

对于表达式b?x:y,来说,首先b,x,y都必须是变量,不能是命令语句,我们以以下的图片例子进行学习

 

以下是某同学通过eclipse敲的代码

 

 

我们可以看到在S>100||S<0处报错,下面我们来看看具体报错的地方

在逻辑上这位同学这么写是没有问题,但是错在了语法上

三目运算的表示式2,表达式3,不能直接输入命令语句,如System.out等语句,对于这道题目我们可以先把三目运算符的运算结果赋值给一个变量,最后再输出这个变量即可

下面是语法正确的代码格式

import java.util.Scanner;
public class Compare {
public static void main(String []args){
 System.out.println("请输入这个同学的成绩");
 Scanner grade=new Scanner(System.in);
 int score=grade.nextInt();
 String number=score>100||score<0?"错误":score>=90?
   ("这个同学的等级为A"):
    (score>60&&score<90?"这个同学的等级为B":
     "这个同学的等级为C");
                 System.out.println(number);
 }
}

 

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值