【发布时间】:2012-01-23 22:52:12
【问题描述】:
这两种方法需要考虑来自名为 car 的第二个类的布尔 onLoan 才能应用,我的意思是只应考虑 onLoan == false 的汽车。我到了他们的基地,尝试了解决这个问题的想法,但目前对我来说似乎没有什么建议?谢谢!
/**
* Constructor for objects of class RentalCompany
*/
public void showAllCarsNotOnloan ()
{
for ( Car car:cars) {
if (cars.size()>0 ) {
int i = 0;
System.out.println(car.getDescription());
i++;
}
else if ( cars.size() < 0 ){
System.out.println ("Add cars first");
}
}
}
还有第二种方法
public Car searchCar(String description)
{
for (Car car : cars) {
if (car.getDescription() == description) {
return car;
}
else {
System.out.println("This car is not listed. Retry!!");
}
}
return null;
}
【问题讨论】:
-
请注意,在第一种方法中,您正在检查遍历列表的循环内的汽车列表的大小。如果您在循环内,则列表不能为空。
-
字符串比较需要
.equals而不是==。car.getDescription() == description. -
你想做什么,什么不起作用?
-
在调用这些方法时,它们基本上都能正常工作,但是当我租一辆车为对象 car 调用 arraylist 中的一种方法时,它会将布尔值 onLoan 更改为 true,所以我想尝试什么要做的是在 showallcar 方法的情况下调用该方法,然后调用该方法来打印(索引 + 汽车的描述),但只是不是 onloan 的汽车意味着 onloan == false eg 1: Red Ford, 3 : 蓝色吉普车(在这种情况下 0: 和 2: 会丢失,因为它们是 onLoan)