我想找出三个给定数字中最大的数字,使用switch-case(不使用if) 我使用这个程序回答了这个问题:
class GreatestNoSwitch{
public int main(int a, int b, int c){
int d = (int)Math.floor(a/b);
int max = 0;
switch(d){
case 0:
max = b;
break;
default:
max = a;
}
d = (int)Math.floor(max/c);
switch(d){
case 0:
max = c;
}
return max;
}
}
有没有人有更简单的答案?
答案 0 :(得分:3)
这有点愚蠢,但是你走了。
switch(1)
{
default:
return Math.max(a, Math.max(b, c));
}
答案 1 :(得分:1)
不确定为什么要编写世界上最复杂的代码片段来查找最多三个整数。这个更具可读性,但仍然足够复杂,让你感到愉快...
public int main( int a, int b, int c)
{
return Collections.max( Arrays.asList( new Integer[]{a,b,c} ));
}