【发布时间】:2019-09-14 21:30:38
【问题描述】:
有 3 个班级。房屋、汽车和物品清单
汽车类
public class Car
{
private int id;
private String colour;
public Car(int id, String colour)
{
this.id = id;
this.colour = colour;
}
public String getColour() //accessor method
{
return colour;
}
public int getId() //accessor method
{
return id;
}
public void setId(int id) // mutator method
{
this.id = id;
}
public void setColour(String colour) // mutator method
{
this.colour = colour;
}
}
家庭类
public class House
{
private int number;
private String colour;
public House(int number, String colour)
{
this.number = number;
this.colour = colour;
}
public String getColour() //accessor method
{
return colour;
}
public int getNumber() //accesor
{
return number;
}
public void setNumber(int number) // mutator method
{
this.number = number;
}
public void setColour(String colour)
{
this.colour = colour;
}
}
项目清单类
import java.util.ArrayList;
import java.util.List;
public class ItemList
{
private ArrayList<Car> cars;
private ArrayList<House> houses;
public ItemList()
{
cars = new ArrayList<Car>();
houses = new ArrayList<House>();
}
public void addCar(int id, String colour)
{
Car myCar = new Car(id,colour);
cars.add(myCar);
//cars.add(new Car(id,colour)); one-liner
}
public void addHouse(int number, String colour)
{
House myHouse = new House(number,colour);
houses.add(myHouse);
}
我正在尝试创建一种方法,通过输入数字和颜色(采用 2 个参数,int 和 String)从两个列表(汽车和房屋)中删除项目/元素 - 将搜索列表,如果它找到具有匹配整数和字符串值的对象将从列表中删除对象。
到目前为止我想出了这个
public void deleteByItem(int value, String colour)
{
Car car = new Car(value,colour);
House house = new House(value,colour);
boolean bCar = searchCarByItem(car);
boolean bHouse = searchHouseByItem(house);
if (bCar)
{
cars.remove(car);
}
if (bHouse)
{
houses.remove(house);
}
}
【问题讨论】:
-
你遇到了什么问题?
-
请问您为什么要删除具有相同 id 和颜色的房屋和汽车……这对我来说真的没有意义。如果它是一个学习示例,它看起来有点奇怪,如果它是你真正使用的东西,你可能需要重新考虑你的数据结构。
标签: java