要使用哪个arrays?
我正在设计一个新的电影预订系统,每个屏幕上有4个屏幕,每个屏幕上有不同数量的座位。
我需要知道什么ARRAY或什么数据结构最适合在屏幕上随意添加和删除人员。
我相信我需要一个二维arrays结构,但任何帮助将非常感谢!…谢谢
ArrayList是一个很好的简单数组类型列表,允许添加和删除。
如果您愿意,可以创建一个数组数组。 这将是一个2维数组。
你应该做的是构建一个类结构,它将抽象出你将数据存储在内存中的方式。 你可以这样做:
class Cinema { List screens; } class Auditorium { int number; List rows; } class SeatRow { int rowNumber List seats; } class Seat { int seatNumber; boolean occupied; }
注意:这不是唯一的解决方案。 您可能希望研究在Map
或其他数据结构中存储Seats
。
听起来像是同一数据结构的4个实例。 可能是包含席位集合的屏幕对象集合。
我将亲自投票给出上面建议的一个简单而简单的Seat[][]
数组。 没有理由使用另一个数组,因为数组大小可能永远不会改变,如果可以在初始化时完成。 然后只是通过某个位置的数据显示或不显示在屏幕上,或者对于未预留的座位,显示为null
。
根据您的需要(您是否需要记住客人预订的位置?)您甚至可以使用boolean[][]
作为最低要求。
无论如何,只需创建并命名四个不同的Seat 2Darrays。 最好将它们粘在一个单独的类中,并有固定器和吸气剂。
- 在使用Oracle的Java 7时,File.list()在Mac OS X上错误地检索具有NON-ASCII字符的文件名
- Java单击按钮打开一个新窗口
- 字符串池是在PermGen区域或Heap的Object区域中创建的
- 在Apache POI中创建单元格时获取空指针exception
- 建筑师设计模式的缺点
- 如何使用Spring MVC将会话属性作为方法参数(参数)传递
- 如何使Java Regex匹配除指定模式之外的所有内容
- 使用带有标头的REST客户端时获取ssl.SSLHandshakeException但与PostMan一起正常工作
- 是否有一种简单的方法可以在不使用额外库的情况下解析Java中的JSON?