到目前为止,我只弄清楚了如何使用条件运算符从三个变量中获取最大值和最小值。基本上,这就是它在三个变量上的样子:
int highnum = n1>n2?n1:n2; highnum = n3>highnum?n3:highnum;
同样的概念是找到最低的,只是将 (>) 替换为 (<)。 说到五个变量,我还是不知道怎么写。
最佳答案
您可以通过将第二个条件放在 else
部分(即 :
之后的部分)来实现。
演示:
public class Main {
public static void main(String[] args) {
int x = 15, y = 5, z = 10;
int max = x > y && x > z ? x : y > x && y > z ? y : z;
int min = x < y && x < z ? x : y < x && y < z ? y : z;
System.out.println("Max: " + max + ", Min: " + min);
}
}
输出:
Max: 15, Min: 5
如果你被禁止使用&&
,你可以这样做:
int max = x > y ? (x > z ? x : z) : y > z ? y : z;
int min = x < y ? (x < z ? x : z) : y < z ? y : z;
关于java - 如何使用条件运算符获得五个变量中的最大值和最小值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73926155/