【发布时间】:2013-12-25 01:38:45
【问题描述】:
我必须编写这个类来记录飞机的座位安排我的两种方法有问题,这些方法说:
-
makeReservation(id, request)——这个方法直接访问席位来判断席位是否已经被占用。如果没有,请在席位中记录该位置的id。如果您进行了预订,则返回 true,如果已预订,则返回 false, -
getAssignment(id)— 按行和列搜索,直到在席位中找到匹配的 ID,然后将行和列转换为字符串(例如,seats[5][2] == id应该返回“6C”。
我该怎么做? 到目前为止,这是我的代码:
import java.util.ArrayList;
class Plane {
private int[][] seats;
String flight;
String departure;
public Plane(String name, String leaving, int length, int width) {
flight = name;
departure = leaving;
for (length = 0; length < 22; length++)
for (width = 0; width < 5; width++)
seats[length][width] = -1;
}
public String getFlight() {
return flight;
}
public String getDepartureTime() {
return departure;
}
public void setDepartureTime(String newTime) {
this.departure = newTime;
}
public boolean makeReservation(int id, AvilaNatalyPassenger request) {
boolean status = true;
ArrayList<Integer> inputValues = new ArrayList<Integer>();
for (int i = 0; i < 22; i++) {
for (int j = 0; j < 5; j++) {
id = seats[i][j];
if (id != -1) {
if (inputValues.contains(id)) {
status = false;
break;
} else {
inputValues.add(id);
// for(int x = 0; x < inputValues.size; x++)
// for(int y = 0; y < inputValues[x].size; y++)
// inputValues[x][y] = seats[x][y];
}
}
}
}
return status;
}
public int getId(int row, int seat) {
if (row >= 0 && row < seats[0].length && seat >= 0
&& seat < seats.length) {
return seats[row][seat];
} else {
return -1;
}
}
public String getAssignment(int id){
for (
}
}
【问题讨论】:
标签: java class methods multidimensional-array