我有Floor类,它有以下方法。
Passenger class有一个构造函数,用于将当前居住楼层设置为1。
以下线路将乘客增加到地板上。
这是我在努力的地方。当我从未在地板3上装载乘客时,以下两个陈述都会返回。
再次感谢您的帮助。
答案 0 :(得分:0)
您只对底层做过任何事情......我怀疑代码中还有其他问题。
public boolean isResident(Passenger passenger) {
int floor = building.getFloor();
return building.floor(0).resident.contains(passenger);
}
此方法调用builder.getFloor()
,然后继续完全忽略输出,并检查底层是否包含乘客。
public void enter(Passenger passenger) {
Floor.enterGroundFloor(passenger);
}
这种方法也简要地将乘客放在一楼。
所以:
Building.floor(1).enter(p1)
Building.floor(1).isResident(p1) --> true
Building.floor(3).isResident(p1) --> true
这很自然,因为你将p1
放在一楼,然后检查他是否在地下两次。
您似乎对static
的含义以及应如何构建对象层次结构存在一些基本的误解。如果您链接其余代码,我相信我们可以为您提供更多建议。