package test4;
public class AdultOrders {
private String name;
private int age;
private int money;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getMoney() {
return money;
}
public void setMoney() {
this.money = 2000;
}
public void setMoney(int money) {
this.money = money;
}
public void show(AdultOrders a) {
System.out.println("姓名"+a.getName()+",年齡:"+a.getAge()+"本次出行金額:"+a.getMoney());
}
}
package test4;
public class ChildOrders extends AdultOrders{
private String state;
public String getState() {
return state;
}
public void setState(int state) {
if (state==1) {
this.state="佔牀";
} else if(state==2){
this.state="不佔牀";
}
}
public void setMoney(String state) {
if (state.equals("佔牀")) {
super.setMoney(30);
} else if(state.equals("不佔牀")){
super.setMoney(0);
}
}
public void show(ChildOrders a) {
System.out.println("姓名"+a.getName()+",年齡:"+a.getAge()+","+a.getState()+",1.2m以下兒童免費(佔牀費除外),本次出行金額:"+a.getMoney());
}
}
package test4;
public class OldmanOrders extends AdultOrders{
public void setAge(int age) {
if (age<65) {
System.out.println("對不起,老人訂單年齡需爲65歲以上!");
}else {
super.setAge(age);
}
}
public void setMoney() {
super.setMoney(1000);
}
public void show(OldmanOrders a) {
System.out.println("姓名"+a.getName()+",年齡:"+a.getAge()+"65歲以上老人半價,本次出行金額:"+a.getMoney());
}
}
package test4;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Scanner;
public class Function {
private int date;
private String MobileNo;
public int getDate() {
return date;
}
public void setDate(int date) {
this.date = date;
}
public String getMobileNo() {
return MobileNo;
}
public void setMobileNo(String mobileNo) throws Exception {
if (mobileNo.length()>10&&mobileNo.length()<12) {
this.MobileNo=mobileNo;
}else {
throw new Exception("手機號碼必須爲11位");
}
}
public void method1(ArrayList<AdultOrders> list,Function f){
Scanner in=new Scanner(System.in);
String yn;
System.out.print("請輸入出行日期:");
f.setDate(in.nextInt());
System.out.print("請輸入聯繫人手機號碼:");
try {
f.setMobileNo(in.next());
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("******新增出行人資訊******");
do {
System.out.print("1.成人 2.兒童(1.2米以下) 3.老人(65歲以上) 請選擇類別:");
int num1=in.nextInt();
switch(num1) {
case 1:
AdultOrders a=new AdultOrders();
System.out.println("請輸入姓名:");
a.setName(in.next());
System.out.println("請輸入年齡:");
a.setAge(in.nextInt());
a.setMoney();
a.show(a);
list.add(a);
break;
case 2:
ChildOrders b=new ChildOrders();
System.out.println("請輸入姓名:");
b.setName(in.next());
System.out.println("請輸入年齡:");
b.setAge(in.nextInt());
System.out.println("是否佔牀:1.佔牀 2.不佔牀");
b.setState(in.nextInt());
b.setMoney(b.getState());
b.show(b);
list.add(b);
break;
case 3:
OldmanOrders c=new OldmanOrders();
System.out.println("請輸入姓名:");
c.setName(in.next());
System.out.println("請輸入年齡:");
c.setAge(in.nextInt());
c.setMoney();
c.show(c);
list.add(c);
break;
}
System.out.println("是否繼續新增(Y/N)?:");
yn=in.next();
} while (yn.equals("Y"));
System.out.println("******訂單資訊******");
System.out.print("出行日期:");
System.out.println(f.getDate());
System.out.print("聯繫人手機號碼:");
System.out.println(f.getMobileNo());
System.out.print("訂單總金額:");
int sum=0;
for (AdultOrders a : list) {
sum+=a.getMoney();
}
System.out.println(sum);
}
public void method2(ArrayList<AdultOrders> list,Function f){
System.out.print("出行日期:");
System.out.println(f.getDate());
System.out.print("聯繫人手機號碼:");
System.out.println(f.getMobileNo());
System.out.println("詳細資訊:");
System.out.println("姓名 年齡 金額");
for (AdultOrders a : list) {
System.out.println(a.getName()+" "+a.getAge()+" "+a.getMoney());
}
}
public void method3(Function f){
Scanner in=new Scanner(System.in);
System.out.print("請輸入新的出行日期:");
f.setDate(in.nextInt());
System.out.print("請輸入新的聯繫人手機號碼:");
try {
f.setMobileNo(in.next());
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("出行日期:"+f.getDate()+",聯繫人手機號碼:"+f.getMobileNo()+",修改成功!");
}
public void method4(ArrayList<AdultOrders> list){
System.out.println("請輸入要刪除的出行人姓名:");
Scanner in=new Scanner(System.in);
String n=in.next();
int num1=-1;
for (AdultOrders a : list) {
if (a.getName().equals(n)) {
num1=list.indexOf(a);
break;
}
}
if(num1==-1) {
System.out.println("對不起,訂單中不包含此遊客資訊。");
}else {
list.remove(num1);
System.out.println("刪除成功!");
}
}
public void method() {
ArrayList<AdultOrders> list=new ArrayList<AdultOrders>();
Function f=new Function();
do {
System.out.println("*********歡迎光臨陽光旅遊網*********");
System.out.println("1.新增出行訂單");
System.out.println("2.檢視我的出行訂單");
System.out.println("3.修改訂單資訊");
System.out.println("4.刪除出行人");
System.out.println("5.檢視行程");
System.out.println("6.退出系統");
System.out.println("請選擇(1-6):");
Scanner in=new Scanner(System.in);
int num=in.nextInt();
switch(num) {
case 1:
method1(list,f);
break;
case 2:
method2(list,f);
break;
case 3:
method3(f);
break;
case 4:
method4(list);
break;
case 5:
break;
case 6:
System.out.println("歡迎下次再來!");
System.exit(1);
break;
}
} while (true);
}
}
package test4;
public class Test {
public static void main(String[] args) {
Function o=new Function();
o.method();
}
}