⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 airline.java

📁 航班订座系统~java的作业
💻 JAVA
字号:
public class Airline
{
private static Keyboard kb = new Keyboard();
private static UserInterface ui = new UserInterface();
private static char menuChoice;
private static Flight aFlight = new Flight(6,4);

 public static void main (String args[])
 {
  String filename;
  filename = kb.getString("Enter input filename (RETURN for no input file) > ");
  if (filename.length() != 0)
   aFlight.loadFromFile(filename);

  do 
  {
   ui.displayMainMenu();
   menuChoice = Character.toUpperCase(kb.getChar("\n\t\tMake your selection > "));
   switch (menuChoice)
   {
    case '1' : flightAdmin();
    break;
    case '2' : bookings();
    break;
    case '3' : aFlight.viewSeat(kb.getString("\n\t\tEnter seat number >"));
    break;
    case '4' : aFlight.displayFlightInfo();
               aFlight.displaySeatingPlan();
    break;
   } 
  }while (menuChoice != 'Q');

 filename = kb.getString("Enter output filename (RETURN = no output file) > ");
 if (filename.length() != 0)
   aFlight.saveToFile(aFlight.getDate()+".txt");
 } 

 private static void flightAdmin()
 {
  do 
  {
   ui.displayAdminMenu();
   menuChoice = Character.toUpperCase(kb.getChar("\n\t\tMake your selection > "));
   switch (menuChoice)
   {
    case '1' : enterFlightDetails();
    break;
    case '2' : changeFlightStatus();
    break;
   } 
  }while (menuChoice != 'R');
 }

 private static void enterFlightDetails()
 {
  String flightString;
  do 
  {
   ui.displayFlights();
   menuChoice = Character.toUpperCase(kb.getChar("\n\t\tMake your selection > "));
   switch(menuChoice)
   {
    case '1' : aFlight.setFlightDetails("SA123", "GLA", "BRR");
    break;
    case '2' : aFlight.setFlightDetails("SA124", "BRR", "GLA");
    break;
    case '3' : aFlight.setFlightDetails("SA234", "GLA", "BEB");
    break;
    case '4' : aFlight.setFlightDetails("SA235", "BEB", "GLA");
    break;
    case '5' : aFlight.setFlightDetails("SA345", "GLA", "SYY");
    break;
    case '6' : aFlight.setFlightDetails("SA346", "SYY", "GLA");
    break;
   }
  }while (menuChoice != 'R');
 }

 private static void changeFlightStatus()
 {
  do 
  {
   ui.displayStatusMenu();
   menuChoice = Character.toUpperCase(kb.getChar("\n\t\tMake your selection > "));
   if (menuChoice != 'R')
    aFlight.setFlightStatus(menuChoice);
  }while (menuChoice != 'R');
 }

 private static void bookings ()
 {
  char status;
  do 
  {
    ui.displayBookingsMenu();
    if (aFlight.getFreeSeats() == 0)
     aFlight.setFlightStatus('5');
  
    menuChoice = Character.toUpperCase(kb.getChar("\n\t\tMake your selection > "));
    switch (menuChoice)
    {
     case '1' : 
      if(!(aFlight.isBoarding() || aFlight.isClosed())) 
      {
       aFlight.updateSeat(kb.getString("\n\t\tEnter seat number to be cancelled >"),"", 0);
       aFlight.setFlightStatus('1');
      }
      else
       System.out.println("\n\t\tCancellation too late - "+aFlight.getStatusMessage());
     break;
     case '2' : 
      if(!(aFlight.isCheckingIn() || aFlight.isBoarding()|| aFlight.isClosed() || aFlight.isFull())) 
      {
       aFlight.updateSeat(kb.getString("\n\t\tEnter seat numberto be reserved >"),kb.getString("\n\t\tEnter the passenger name >"), 1);
      }
      else
       System.out.println("\n\t\tReservations not available -"+aFlight.getStatusMessage());
     break;
     case '3' : 
      if(!(aFlight.isBoarding() || aFlight.isClosed()|| aFlight.isFull())) 
      {
       aFlight.updateSeat(kb.getString("\n\t\tEnter seat number to be booked >"), kb.getString("\n\t\tEnter the passenger name >"), 2);
      }
      else
       System.out.println("\n\t\tBookings not available –"+aFlight.getStatusMessage());
     break;
    }
  }while (menuChoice != 'R');
 }
} // end of Airline

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -