我需要创建一个航空公司预订应用程序,但我不知道如何使用2D阵列制作座位号/位置的地图。有人可以帮忙吗?
答案 0 :(得分:0)
看看multidimensional arrays。我不确定使用2D阵列是否可行,但这是一种方法:
boolean[][] seats = new boolean[NUMBER_OF_ROWS][NUMBER_OF_SEATS_PER_ROW];
// checking if a seat is reserved:
boolean reserved = seats[rowIndex][seatIndex];
// marking a seat as reserved:
seats[rowIndex][seatIndex] = true;
答案 1 :(得分:0)
因此,通常有多种方法可以解决这个问题。
我记得在飞机上,我认为座位只是一个从1开始向上的唯一数字。因此,如果我们牢记这一点,并且座位不是完全正确地放在前面或彼此相邻,因为平面结构不会总是允许,并且一些区域每行只有4个座位而另外6个我们怎么知道这个职位。
我建议你什么时候实际上只有一个简单的座位对象列表,如下所示:
public class PlaceSeat {
public final int number;
public final double x, y;
public PlaceSeat(int number, double x, double y) {
this.number = number;
this.x = x;
this.y = y;
}
}
一旦你有了这个,你就可以使用任何图形工具并浏览列表并在应用程序屏幕上绘制座位。
附加信息,例如用于座椅的图像,宽度/高度和旋转也可能是相关的。如果用户点击某个座位,也可能是某种动作侦听器。