600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > java飞机订票系统课程设计_JAVA数据结构课程设计 航空订票系统求助

java飞机订票系统课程设计_JAVA数据结构课程设计 航空订票系统求助

时间:2020-01-11 12:08:37

相关推荐

java飞机订票系统课程设计_JAVA数据结构课程设计 航空订票系统求助

展开全部

今天比较闲,编了一套,一共4个class。不懂62616964757a686964616fe59b9ee7ad9431333335303462再问。

这格式真要命,凑活看吧。publicenumAirClass{

FIRST,

SECOND,

THIRD

}

--------------------------------------------

publicclassCustomer{

privateStringname;

privateintticketNumber;

privateAirClassairClass;

publicCustomer(Stringname,intticketNumber,AirClassairClass){

this.name=name;

this.ticketNumber=ticketNumber;

this.airClass=airClass;

}

publicStringgetName(){returnname;}

publicvoidsetName(Stringname){this.name=name;}

publicintgetTicketNumber(){returnticketNumber;}

publicAirClassgetAirClass(){returnairClass;}

}

------------------------------------------------

importjava.util.LinkedList;

importjava.util.List;

publicclassAirLine{

privateStringdestination;

privateStringflightName;

privateStringflightNumber;

privateintdayOfWeek;

privateintcapacity;

privateintremainder;

privateListbooking=newLinkedList();

privateListpreBooking=newLinkedList();

publicAirLine(Stringdestination,StringflightName,StringflightNumber,intdayOfWeek,intcapacity){

this.destination=destination;

this.flightName=flightName;

this.flightNumber=flightNumber;

this.dayOfWeek=dayOfWeek;

this.capacity=capacity;

this.remainder=capacity;}

publicStringgetDestination(){returndestination;}

publicStringgetFlightName(){returnflightName;}

publicStringgetFlightNumber(){returnflightNumber;}

publicintgetDayOfWeek(){returndayOfWeek;}

publicintgetCapacity(){returncapacity;}

publicintgetRemainder(){returnremainder;}

publicListgetBooking(){returnbooking;}

publicListgetPreBooking(){returnpreBooking;}

publicbooleanaddBooking(Customerc){

if(this.remainder>=c.getTicketNumber()){

this.remainder=this.remainder-c.getTicketNumber();

this.booking.add(c);

returntrue;

}else{

this.preBooking.add(c);

returnfalse;

}

}

publicvoidremoveBooking(Customerc){

if(this.booking.contains(c)){

this.booking.remove(c);

this.remainder=this.remainder+c.getTicketNumber();

}else{

thrownewIllegalArgumentException("Customernotfound.");

}

}

publicvoidremovePreBooking(Customerc){

if(this.preBooking.contains(c)){

this.preBooking.remove(c);

}else{

thrownewIllegalArgumentException("Customernotfound.");

}

}

publicStringtoString(){

returnthis.flightName+":"+this.flightNumber+":"

+this.dayOfWeek+":"+this.remainder;

}

}

---------------------------------

importjava.util.Calendar;importjava.util.Date;

importjava.util.LinkedList;importjava.util.List;

importjava.util.concurrent.TimeUnit;

publicclassMain{

privateListairLines=newLinkedList();

privatevoidinit(){

finalAirLineairLine1=newAirLine("beijing","flightName","flightNumber",Calendar.MONDAY,300);

this.airLines.add(airLine1);

//自己加新的airLine2,airLine3...

finalCustomercustomer1=newCustomer("Tom",2,AirClass.FIRST);

airLine1.addBooking(customer1);

//自己加新的customer2,customer3...

}

publicAirLinesearch(Stringdestination){

if(destination==null)returnnull;

finalintcurrenDayOfWeek=Calendar.getInstance().get(Calendar.DAY_OF_WEEK);

AirLineres=null;

intdiffToCurrenDate=7;

for(AirLinea:airLines){

if(destination.equals(destination)){

if(res==null){

res=a;

continue;

}

intdiff=a.getDayOfWeek()-currenDayOfWeek;

if(diff

if(diff

diffToCurrenDate=diff;

res=a;

}

}

}

if(res==null){

System.out.println("Notfound");

}else{

System.out.println("日期"+newDate(System.currentTimeMillis()+TimeUnit.DAYS.toMillis(diffToCurrenDate))+":"+res.toString());

}

returnres;

}

publicvoidbooking(AirLinea,Customerc){

if(a.addBooking(c)){

System.out.println("订到了");

}else{

System.out.println("排队中");

}

}

publicvoidcancel(AirLinea,Customerc){

a.removeBooking(c);

for(Customerpre:a.getPreBooking()){

if(a.addBooking(pre)){

a.removePreBooking(pre);

System.out.println("排队的订到了");

break;

}else{

System.out.println("票余量不够当前面排队的人,下一个");

}

}

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。