2017-10-18 68 views
3

我正在做一個銷售機票的應用程序的大學項目。 在提供飛機座位的部分,我正在做他們與hashmaps,把乘客的名字,和行&座位爲關鍵。 我不知道如何使用掃描儀要求客戶寫下他想要的排和座位,並將座位標記爲已佔用。我應該創建一個名爲座位的班級嗎?如果你有一些想法,我會非常感激。HashMap售飛機票java

public AsientosConNombre(Integer row, String seat) { 
     super(row, seat); 
} 

public static void main(String[] args) { 

    String nombrePasajero = Scanner.getString("Enter your name: "); 
    Seat1 asientopasajero= new Seat1(AsientosConNombre); 

    //creo el hashmap 
    HashMap<Seat1, String> Asientos = new HashMap<Seat1, String>(); 
    //llenamos el hashmap con la informacion ingresada por el pasajero. 

    Asientos.put(asientopasajero, nombrePasajero); 

    //esto deberia devolver la app clientes cuando el usuario indica su nombre para saber su vuelo. 
    // (ademas del horario y fecha del vuelo) 
    System.out.println("Your information: "+ Asientos); 
} 

,我提出的其他類:

public class Seat1 { 
    Integer row = Scanner.getInt("Enter your row: "); 
    String seat = Scanner.getString("Enter your seat: "); 
    public Seat1(Integer row, String seat) { 
     this.row = row; 
     this.seat = seat; 
    } 
    public boolean full(boolean occupied){ 
     return occupied; 
    } 
} 

回答

0

目前這是什麼代碼正在做的是,它是使用你的座位對象作爲重點,並存儲名稱作爲值。你應該存放座位,例如它的排和座位號碼作爲鑰匙,並且作爲一個值,你可以設置標誌,告訴座位是否被佔用。 因此,無論何時您要創建一個座位,您都必須將該關鍵字(座位號,行,名稱)置於散列表中,並且每當新客戶端請求相同的密鑰時,您就可以看到該座位是否被佔用。

0

代碼

Integer row = Scanner.getInt("Enter your row: "); 
String seat = Scanner.getString("Enter your seat: "); 

需求是在一個代碼塊,它不能只是坐在那裏,你定義的字段。

嘗試在移動到您main方法

Integer row = Scanner.getInt("Enter your row: "); 
String seat = Scanner.getString("Enter your seat: "); 

,然後使用這些字段來創建你Seat

Seta myseat = new Seat (row, seat);