java实现航班信息查询管理系统

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

java实现航班信息查询管理系统

  2021-04-02 我要评论

Air Infomation System 基于控制台的航班信息系统,简称AIS

具体要求如下:

(1)显示航班信息系统主菜单,如图所示,包括:

1)、列出所有航班

2)、按起飞时间查询

3)、按目的地查询

4)、删除航班

5)、更新航班

6)、退出系统

AirInfo.java

public class AirInfo {
 /*航班编号(id)
  航班号(flight_number)
  目的地(destination)
  起飞日期(flight_date)
 */
 private int id;
 private String flight_number;
 private String destination;
 private String flight_date;
 
 public AirInfo(int id, String flight_number, String destination, String flight_date){
 this.id=id;
 this.flight_number=flight_number;
 this.destination=destination;
 this.flight_date=flight_date;
 }
 public int getId() {
 return id;
 }
 public void setId(int id) {
 this.id = id;
 }
 public String getFlight_number() {
 return flight_number;
 }
 public void setFlight_number(String flight_number) {
 this.flight_number = flight_number;
 }
 public String getDestination() {
 return destination;
 }
 public void setDestination(String destination) {
 this.destination = destination;
 }
 public String getFlight_date() {
 return flight_date;
 }
 public void setFlight_date(String flight_date) {
 this.flight_date = flight_date;
 }
 
}

AirInfoManager.java

import java.util.*;

public class AirInfoManager {


 //列出所有航班的方法
 public void all_flight(ArrayList<AirInfo> flight){
 System.out.println("编号\t 航班号\t目的地\t\t起飞日期");
 for(AirInfo e:flight)
  System.out.println(e.getId()+"\t"+e.getFlight_number()+"\t"+e.getDestination()+"    "+e.getFlight_date());
 
 }
 
 //按起飞时间查询的方法
 public void inquiry_date(ArrayList<AirInfo> flight){
 System.out.print("请输入日期:");
 Scanner in=new Scanner(System.in);
 String date=in.next();
 for(AirInfo e:flight)
 {
  if(e.getFlight_date().equals(date)){
  System.out.println("编号\t 航班号\t目的地\t\t起飞日期");
  System.out.println(e.getId()+"\t"+e.getFlight_number()+"\t"+e.getDestination()+"    "+e.getFlight_date());
  }
 }
 }
 
 //按目的地查询的方法
 public void inquiry_destination(ArrayList<AirInfo> flight){
 System.out.print("请输入目的地:");
 Scanner in=new Scanner(System.in);
 String destination=in.next();
 for(AirInfo e:flight)
 {
  if(e.getDestination().equals(destination)){
  System.out.println("编号\t 航班号\t目的地\t\t起飞日期");
  System.out.println(e.getId()+"\t"+e.getFlight_number()+"\t"+e.getDestination()+"    "+e.getFlight_date());
  }
 }
 }
 
 //删除航班的方法
 /*
 * 方法一:用remove(index)方式删除记录,此处需要注意的是调用Iterator方法,
 * 避免产生ConcurrentModificationException异常
 *
 public void delete_flight(ArrayList<AirInfo> flight){
 System.out.print("请输入需要删除的航班编号:");
 Scanner in=new Scanner(System.in);
 int id=in.nextInt();
 Iterator<AirInfo> iterator = flight.iterator();
 while(iterator.hasNext()){
  AirInfo e = iterator.next();
  if(e.getId()==id){
  iterator.remove();
  System.out.println("删除成功!");
  }
 }
 }
 */
 
 /*
 * 方法二:将需要删除的记录用一个ArrayList()类包装起来,
 * 用removeAll(Collection<?> c)方法将其删除
 */
 public void delete_flight(ArrayList<AirInfo> flight){
 System.out.print("请输入需要删除的航班编号:");
 Scanner in=new Scanner(System.in);
 List delList = new ArrayList();
 int id=in.nextInt();
 for(AirInfo e:flight)
 {
  if(e.getId()==(id))
  delList.add(e);
 }
 flight.removeAll(delList);
 System.out.println("删除成功!");
 }
 //更新航班的方法
 public void update_flight(ArrayList<AirInfo> flight){
 Scanner in=new Scanner(System.in);
 int id;
 String flight_number,destinaton,flight_date;
 System.out.print("请输入需要更新的航班编码:");
 id=in.nextInt();
 System.out.print("请输入新的航班号:");
 flight_number=in.next();
 System.out.print("请输入新的目的地:");
 destinaton=in.next(); 
 System.out.print("请输入新的起飞时间:");
 flight_date=in.next(); 
 flight.add(new AirInfo(id,flight_number,destinaton,flight_date));
 System.out.println("更新成功!");
 }
 
 
 //退出系统的方法
 public void exit(){
 System.out.println("成功退出系统!");
 System.exit(0);
 }
}

TestAirInfo.java

import java.util.ArrayList;
import java.util.Scanner;

//启动和运行系统
public class TestAirInfo {

 public static void main(String[] args) {

 AirInfoManager airInfoManager=new AirInfoManager();
  //用Arraylist表示航班信息
  ArrayList<AirInfo> flight=new ArrayList<>();
  
  //为数组增加记录
  flight.add(new AirInfo(1,"001","beijing","2016-1-1"));
  flight.add(new AirInfo(2,"002","shanghai","2016-2-20"));
  flight.add(new AirInfo(3,"003","guangzhou","2016-2-24"));
  
 Scanner in=new Scanner(System.in);
 while(true){
 System.out.print("请选择操作(1.列出所有航班,2.按起飞时间查询,3.按目的地查询,4.删除航班,5.更新航班,6.退出系统)");
 switch(in.nextInt()){
 case 1:
  airInfoManager.all_flight(flight);
  break;
 case 2:
  airInfoManager.inquiry_date(flight);
  break;
 case 3:
  airInfoManager.inquiry_destination(flight);
  break;
 case 4:
  airInfoManager.delete_flight(flight);
  break;
 case 5:
  airInfoManager.update_flight(flight);
  break;
 case 6:
  airInfoManager.exit();
  default:System.out.println("对不起,您输入的数字无效。请输入1~6之间的数字:");
 }
 System.out.println();
 }
 }

}

源码下载:java航班信息查询管理系统

更多学习资料请关注专题《管理系统开发》。

您可能感兴趣的文章:

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们