我正在设计一个新的影院预订系统,每个屏幕上有4个屏幕,每个屏幕都有不同数量的座位。
我需要知道什么ARRAY或什么数据结构最适合在屏幕上添加和删除他们想要的人。
我相信我需要一个二维阵列结构,但是非常感谢任何帮助!...谢谢
答案 0 :(得分:2)
你应该做的是构建一个类结构,它将抽象出你在内存中存储数据的方式。您可以执行以下操作:
class Cinema {
List<Auditorium> screens;
}
class Auditorium {
int number;
List<SeatRow> rows;
}
class SeatRow {
int rowNumber
List<Seat> seats;
}
class Seat {
int seatNumber;
boolean occupied;
}
注意:这不是唯一的解决方案。您可能希望将Seats
存储在Map
或其他一些数据结构中。
答案 1 :(得分:0)
ArrayList是一个很好的简单数组类型列表,允许添加和删除。
如果您愿意,可以创建一个数组数组。这将是一个2维数组。
答案 2 :(得分:0)
听起来像是同一数据结构的4个实例。可能是包含席位集合的Screen对象集合。
答案 3 :(得分:0)
我个人投票支持上面建议的简单Seat[][]
类结构数组。没有理由使用另一个数组,因为数组大小可能永远不会改变,如果可以在初始化时完成。然后只需在某个位置显示或不显示屏幕上的数据,或者null
显示未预留的座位。
根据您的需要(您是否需要记住客人预订的位置?),您甚至可以使用boolean[][]
作为最低要求。
无论如何,只需创建并命名四种不同的Seat 2D阵列。最好将它们放在一个单独的类中,并有固定器和吸气剂。