java实现航班信息查询管理系统
本文实例为大家分享了java航班信息查询管理系统的具体代码,供大家参考,具体内容如下
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航班信息查询管理系统
更多学习资料请关注专题《管理系统开发》。
以上是 java实现航班信息查询管理系统 的全部内容, 来源链接: utcz.com/z/361364.html