我刚开始使用java,所以如果我混淆了事情,请耐心等待。如何比较来自多个目标的变量值
无论如何,我想创建一个包含4个不同房间的关卡。我已经完成了,所以每个房间都是用主要方法创建的独立对象。
然后我想要做的是将每个房间放置在一定大小的水平面内,如果房间与另一个房间重叠,它将返回false。每个房间基本上都是100x100像素的块。
我已经完成了这样的工作,每个房间对象通过将(x,y)线分配给房间类中定义的2个变量来存储它的位置。
但是我放置第二个房间时遇到了麻烦。如何检查我想放置的第二个房间是否与其他房间不重叠?我的目的是检查所有房间对象中的所有(x,y)变量值,如果它们中的任何一个重叠,它将返回false。但是我不知道如何引用所有这些变量,我怎样才能检查每个房间对象中的变量?
非常感谢您的帮助!
考虑建模一个*房间集合*。那么不相交测试就是* collection *的一个函数。每个房间将保持其长度和宽度(并提供返回这些功能的功能),但不*在空间中的位置。这又是该集合的一个属性。 – Bathsheba
创建一个ArrayList并将其调用级别,可以将空间添加到级别ArrayList并跟踪它们。 ArrayList level = new ArrayList(); String room1 [] [] = new String [100] [100]; String room2 [] [] = new String [100] [100]; level.add(room1); level.add(room2); – Arsaceus