使用三元运算符解决多个条件

use ternary operator to solve multiple conditions

谁能帮我解决这个问题。没用。

看这里:

class Question05 
{ 
   public static void main(String[] args) 
   { 
     double gpa = Double.parseDouble(args[0]); 
     String res = gpa >= 3.6?"First class Hons":(gpa<3.6 && gpa>=3.4?"Upper Second Class Hons": (gpa<3.4 && gpa>=3.0?"Lower Second Class Hons": (gpa<3.0 && gpa>=2.0?"Pass":"you have failed"))); 
     System.out.println(res);
   } 
}

编辑:@veena,您试图将一个字符串分配给 gpa,该字符串被声明为双精度!!!

我之前有过这个问题,有几种方法,具体取决于你对这个问题的意思... 由于它看起来确实是一个 class 作业,我将给出我自己的例子而不是修复你的例子。

场景一: 如果您想有多个通过条件,请考虑以下... 为了安全起见,将条件括在括号中,并使用逻辑分隔符。
例如:
(1==1 && 2==2)?"yay":"sadness"
https://jsfiddle.net/o4nu3ya5/

场景二: 如果您想根据以前的条件验证条件,请考虑以下...
只需将一个三元组放在一个三元组中,可能称为嵌套三元组? 例如:
1==1?2==2?"sweet":"almost":"not close"
https://jsfiddle.net/o4nu3ya5/1/

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Conditional_Operator

三元超级有趣。习惯它们,虽然可以理解,但它们会使很多开发人员感到沮丧,因为它们更难阅读。