你的代码逻辑不对呀!if else不仅有交集不说,也做了很多无用的对比,另外为什么要从1开始,难不成没有他们的差没有在0-1之间嘛
if(speed-speedLimit<=0){
System.out.println("Congratulations,you are within the speed limit!");
}
else if(speed-speedLimit<=20){
System.out.println("You are speeding and your fine is 100");
}
else if(speed-speedLimit<=30){
System.out.println("xxxxxx");
}
xxxxxxxxxxx
你可以参考我的,如果speed-speedLimit为25,那么他直接就会去speed-speedLimit<=30这里面了,这样减少了多余判断,优化了代码
只通过了一个,可能逻辑存在问题,还有细节要考虑。
你这个if...else中的条件有交集,比如你贴图中所示,两个条件中,等于20时,都可以满足,你要明确题目要求,对于边界值属于哪个范围需要一致。测试用例很多都是边界值的测试