【发布时间】:2011-12-16 22:35:06
【问题描述】:
嗯,基本上我有一个必须在一月份完成的任务。我必须创建一个允许客户租车的模拟租赁服务。我基于 ArrayList 的逻辑,使用它的方法来管理我的汽车收藏。
我的代码有一些问题,我的很多方法中的逻辑都不能正常工作。在代码示例中,我包含了showCar、rentTheCar 和returnCar 方法没有正常工作。 showCar 方法显示所有汽车,尽管在调用该方法时它要求我输入 carNumber。 rentThecar 和 returnCar 似乎正在租用/归还所有汽车,而不仅仅是我指定的那辆。
我在下面显示我的课程中的相关代码,如果有人可以帮助我找出我可能出错的地方。我想明确表示我不希望我的家庭作业只是一些指导。谢谢。
显示汽车方法:
public void showCar (int carNumber)
{
if (cars.size() < 0 ) {
System.out.println ("Add cars first!!!");
}
else if (carNumber < cars.size()) {
System.out.println(cars.get(carNumber));
}
else{
System.out.println("Error!! This note cannot be shown, because it does not exist!!");
}
}
租车方式:
public void rentTheCar (int carNumber, String CustomerName, String hireDate, String returnDate, int daysOfHire)
{
if (cars.size() < 0) {
System.out.println("Empty list!! Add cars first!!");
}
else if (carNumber > cars.size()) {
System.out.println("This car does not exist!!");
}
else {
for (Car car : cars) {
int index = 0;
cars.get (carNumber);
car.rentTheCar(CustomerName, hireDate, returnDate, daysOfHire);
index ++;
}
}
}
还车方式:
public void returnCar (int carNumber)
{
cars.get(carNumber);
if (cars.size() < 0) {
System.out.println("Error!! It is impossible to return a car from an empty list");
}
else if (carNumber > cars.size()) {
System.out.println("Error!! Not a valis car!!");
}
else {
for (Car car : cars) {
car.returnTheCar();
System.out.println ("The car has been returned correctly");
}
}
}
【问题讨论】:
-
如果列表为空,则它的大小为 0。我会写 cars.size() = cars.size ()"。