package?com.info;
public?class?Car?{
????String?name;?//?車名
????double?price;?//?每小時價格
}
package?com.info;
public?class?PiKa?extends?Bus?{?//?皮卡
????int?cap_goods;?//?載貨量
????public?PiKa(String?name,?int?price,?int?cap_people,?int?cap_goods)?{
????????super(name,?price,?cap_people);
????????this.cap_goods?=?cap_goods;
????}
????@Override
????public?String?toString()?{
????????return?this.name?+?"\t\t"?+?this.price?+?"元/每天\t\t載人:"?+?this.cap_people?+?"人???載貨:"?+?this.cap_goods?+?"噸";
????}
}
package?com.info;
public?class?Bus?extends?Car?{?//?客車
????int?cap_people;?//?載人量
????public?Bus(String?name,?int?price,?int?cap_people)?{
????????this.name?=?name;
????????this.price?=?price;
????????this.cap_people?=?cap_people;
????}
????@Override
????public?String?toString()?{
????????return?this.name?+?"\t\t"?+?this.price?+?"元/每天\t\t載人:"?+?this.cap_people?+?"人";
????}
}
package?com.info;
public?class?Truck?extends?Car?{?//?貨車
????int?cap_goods;?//?載貨量
????public?Truck(String?name,?int?price,?int?cap_goods)?{
????????this.name?=?name;
????????this.price?=?price;
????????this.cap_goods?=?cap_goods;
????}
????@Override
????public?String?toString()?{
????????return?this.name?+?"\t\t"?+?this.price?+?"元/每天\t\t載貨:"?+?this.cap_goods?+?"噸";
????}
}
package?com.info;
import?java.util.Scanner;
public?class?Shop?{?//?商店
????private?Bus?aodi?=?new?Bus("奧迪A4",?500,?4);
????private?Bus?mazida?=?new?Bus("馬自達6",?400,?4);
????private?PiKa?pikaxue?=?new?PiKa("皮卡雪6",?450,?4,?2);
????private?Bus?jinlong?=?new?Bus("金龍",?800,?20);
????private?Truck?songhuajiang?=?new?Truck("松花江",?400,?4);
????private?Truck?yiweike?=?new?Truck("依維柯",?1000,?20);
????private?Car[]?car_list?=?new?Car[]{aodi,?mazida,?pikaxue,?jinlong,?songhuajiang,?yiweike};
????public?void?sell()?{
????????System.out.println("歡迎使用答答出租車系統:");
????????System.out.println("您是否要租車:1?是??0?否");
????????Scanner?input?=?new?Scanner(System.in);
????????if?(input.nextInt()?==?0)?{
????????????System.out.println("歡迎下次光臨!");
????????????return;
????????}
????????display();?//?展示車的信息
????????int[]?car_order?=?car_order();?//?車的訂單序號
????????compute(car_order);?//?計算以及打印賬單
????}
????private?void?compute(int[]?car_order)?{?//?計算以及打印賬單
????????System.out.println("請輸入租車天數:");
????????int?days?=?new?Scanner(System.in).nextInt();?//?租車天數
????????int?num_people?=?0;?//?總載人量
????????int?num_goods?=?0;?//?總載貨量
????????int?price?=?0;
????????System.out.println("您的賬單:");
????????System.out.println("***可載人的車有:");
????????for?(int?i?:?car_order)?{
????????????if?(car_list[i]?instanceof?Bus)?{
????????????????System.out.print(car_list[i].name?+?"\t");
????????????????num_people?+=?((Bus)?car_list[i]).cap_people;
????????????????price?+=?car_list[i].price;
????????????}
????????}
????????System.out.println("共載人:"?+?num_people?+?"人");
????????System.out.println("***可載貨的車有:");
????????for?(int?i?:?car_order)?{
????????????if?(car_list[i]?instanceof?Truck)?{
????????????????System.out.print(car_list[i].name?+?"\t");
????????????????num_goods?+=?((Truck)?car_list[i]).cap_goods;
????????????????price?+=?car_list[i].price;
????????????}
????????????if?(car_list[i]?instanceof?PiKa)?{
????????????????System.out.print(car_list[i].name?+?"\t");
????????????????num_goods?+=?((PiKa)?car_list[i]).cap_goods;
????????????}
????????}
????????System.out.println("共載貨:"?+?num_goods?+?"噸");
????????System.out.println("***租車總價格:"?+?price?*?days?+?"元");
????}
????private?int[]?car_order()?{??//?車的訂單序號
????????System.out.println("請輸入您要租汽車的數量:");
????????Scanner?sc?=?new?Scanner(System.in);
????????int?car_num?=?sc.nextInt();?//?車的數量
????????int[]?num?=?new?int[car_num];
????????int?i?=?0;
????????while?(car_num?>?0?&&?i?<?car_num)?{
????????????System.out.println("請輸入第"?+?(i?+?1)?+?"車的序號:");
????????????num[i]?=?sc.nextInt()?-?1;
????????????i++;
????????}
????????return?num;
????}
????private?void?display()?{?//?展示車的信息
????????System.out.println("您可租車的類型及其價目表:");
????????System.out.println("序號\t\t汽車名稱\t\t租金\t\t容量");
????????int?i?=?1;
????????for?(Car?car?:?car_list)?{
????????????System.out.println(i?+?".\t\t"?+?car);
????????????i++;
????????}
????}
}
package?com.info;
public?class?Client?{
????public?static?void?main(String[]?args)?{
????????new?Shop().sell();
????}
}
2020-06-19
真厲害
2020-02-25
好長啊