Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中,我们可以在三元运算符中同时使用else和else if,并在同一语句中构造3个条件吗?_Java_Conditional Operator - Fatal编程技术网

在java中,我们可以在三元运算符中同时使用else和else if,并在同一语句中构造3个条件吗?

在java中,我们可以在三元运算符中同时使用else和else if,并在同一语句中构造3个条件吗?,java,conditional-operator,Java,Conditional Operator,比如说, int number=10; 数量>99&99&&number9&&number9)?((num>99&&numas)我可以看到你为两位数表达式编写了一个完全不同的语句。但是有没有办法将其调整为“三位数”后面的三字语句在te first line?@sravanTG No中,没有超过三个部分的三元式表达式。有关其他想法,请参阅。嵌套三元if-else语句很快变得不可读。我建议您不要这样做。

比如说,

int number=10;
数量>99&<1000?“三位数”:“不是三位数”;
结果是:不是一个三位数的数字

但是如果数字大于9小于100,我想打印一个“两位数”的语句, 在同一语句中,无需单独的条件即可进行编码

我们可以使用if和elseif语句来实现这一点。
但是在java中有没有一种使用三元运算符的方法呢?

我相信第二个三元表达式作为“else”条件可以实现您想要的结果:

int number=10;
字符串结果=数字>99&&number<1000?“三位数”:
(数字>9&&number<100?“两位数”:“不是两位数或三位数”);

请注意,这可能被认为比等效的if/else if块可读性差,因此这是一种节省使用的技术。

如果要在三值运算符中使用else if,可以使用嵌套的三值运算,但请注意,这可读性差

int num = 5;
String result = (num > 9)?((num>99 && num<1000)?"Three digit number":"Two digit number"):"Single digit number";
System.out.println("Result = "+result);

int num=5;

字符串结果=(num>9)?((num>99&&numas)我可以看到你为两位数表达式编写了一个完全不同的语句。但是有没有办法将其调整为“三位数”后面的三字语句在te first line?@sravanTG No中,没有超过三个部分的三元式表达式。有关其他想法,请参阅。嵌套三元if-else语句很快变得不可读。我建议您不要这样做。