本帖最后由 ysy072022 于 2011-2-19 14:10 编辑
运行第2个类:当getOnBus(0)时,控制台显示如下:" 现在车上的乘客数为:10.出发! " 这个运行结果是正确的.
当getOnBus(5)时,控制台显示如下:" 现在车上的乘客数为:20.出发! " 这个运行结果是错误的,而正确的应该是15个乘客.
当getOnBus(10)时,控制台显示如下:" 现在车上的乘客数为:30.出发! " 这个运行结果是错误的,而正确的应该是20个乘客.
当getOnBus(15)时,控制台没有显示 . 这个运行结果是错误的,而正确的应该是:"现在车上的乘客数为:25.出发!"
若改为 boolean boo = bus.getOnBus(int)
if (boo){
} 则程序结果运行均正常,无论int数据为多少
昨天的帖子如下: 稍微做下更改,更改: public int current_passenger=10;(昨天是public int current_passenger=0;)
有个小问题麻烦 解答下 谢谢!
问题如下:
bus.getOnBus(int) ;
if (bus.getOnBus(int)){
}
使用这样的语句程序运行结果总是错误! 若改为 boolean boo = bus.getOnBus(int)
if (boo){
} 则程序结果运行正常!!
为什么啊?
源程序如下:
public class Bus{
public int max_passenger = 35;
public int current_passenger=10;
public boolean getOnBus(int p_amount){
int temp = current_passenger + p_amount;
if (temp > max_passenger ){
return false;
}else{
current_passenger = temp;
return true;
}
}
}
另外的一个类;
public class UseExtends{
public static void main (String[] args){
Bus bus = new Bus();
bus.getOnBus(15);
if (bus.getOnBus(15)){
System.out.println("现在车上的乘客数为" + bus.current_passenger +".出发!")
}
}
} |