Java 编码BAT上的布尔错误
我正在做一个关于codingbat的编码练习,这就是我应该做的: 给定2个正int值,返回10到20范围内的较大值,如果两者都不在该范围内,则返回0 max1020(11,19)→ 19 max1020(19,11)→ 19 max1020(11,9)→ 11 max1020(9,21)→ 0 我的代码:Java 编码BAT上的布尔错误,java,Java,我正在做一个关于codingbat的编码练习,这就是我应该做的: 给定2个正int值,返回10到20范围内的较大值,如果两者都不在该范围内,则返回0 max1020(11,19)→ 19 max1020(19,11)→ 19 max1020(11,9)→ 11 max1020(9,21)→ 0 我的代码: public boolean IsInRange(int value) { return value >= 10 && value <= 20; } publ
public boolean IsInRange(int value)
{
return value >= 10 && value <= 20;
}
public int max1020(int a, int b) {
if (IsInRange(a) && IsInRange(b))
return a > b ? a : b;
else if (IsInRange(a))
return a;
else if (IsInRange(b))
return b;
}
我没有else语句,所以a和b的最后一个输入就不起作用了。 应该是这样的:
public boolean IsInRange(int value) {
return value >= 10 && value <= 20;
}
public int max1020(int a, int b) {
if (IsInRange(a) && IsInRange(b))
return a > b ? a : b;
else if (IsInRange(a))
return a;
else if (IsInRange(b))
return b;
else
return 0;
}
公共布尔值IsInRange(int值){
返回值>=10&&b值?a:b;
否则,如果(IsInRange(a))
返回a;
否则,如果(IsInRange(b))
返回b;
其他的
返回0;
}
public boolean IsInRange(int value) {
return value >= 10 && value <= 20;
}
public int max1020(int a, int b) {
if (IsInRange(a) && IsInRange(b))
return a > b ? a : b;
else if (IsInRange(a))
return a;
else if (IsInRange(b))
return b;
else
return 0;
}