package models;
import java.util.*;
/**
* 租车系统主要功能测试类
* @author My
*
*/
public class test {
public static void main(String[] args) {
//欢迎界面
System.out.println("欢迎使用嗒嗒租车系统:");
System.out.println("您是否要租车:1.是\t0.否");
Scanner scanner = new Scanner(System.in);
int choose = scanner.nextInt();
//判断用户输入
while(true){
if(choose==1){
break;
}else if(choose==0){
System.out.println("谢谢使用,再见!");
return;
}else{
System.out.println("输入有误,请根据提示重新输入您想选择的数字;\n您是否要租车:1.是\t0.否");
choose = scanner.nextInt();
}
}
//显示可用车型及相关信息
System.out.println("您可租车的类型及其价目表:");
System.out.println("序号\t汽车名称\t租金\t\t容量");
Car[] cars ={new AudiA4(1,"奥迪A4",500,4),new Mazda6(2,"马自达6",400,4),
new PickupSnow6(3,"皮卡雪6", 450, 4, 2),new GoldenDragon(4,"金龙", 800, 20),
new SonghuaRiver(5,"松花江", 400, 4),new Iveco(6,"依维柯", 1000, 20)};
for(int i=0;i<cars.length;i++){
System.out.print((i+1)+".\t"+cars[i].getName()+"\t"+cars[i].getPrice()+"元/天");
if(cars[i].getPassengerCar()==0){
System.out.println("\t载货:"+cars[i].getCargo()+"吨");
}else if(cars[i].getCargo()==0){
System.out.println("\t载人:"+cars[i].getPassengerCar()+"人");
}else{
System.out.println("\t载人:"+cars[i].getPassengerCar()+"人载货:"+cars[i].getCargo()+"吨");
}
}
//判断租车数量
System.out.println("请输入您要租汽车的数量:");
int sum = scanner.nextInt();
//定义总价并初始化为0
double totalPrice = 0;
//定义租车天数并初始化为0
int days = 0;
int[] nums=new int[sum];
//根据用户输入的选择,累加金额
for(int i=0;i<sum;i++){
System.out.println("请输入第"+(i+1)+"辆车的序号:");
int num = scanner.nextInt();
//判断用户输入是否正确,如果错误则提示重新输入
while(num<0||num>7){
System.out.println("输入错误,请重新输入!");
System.out.println("请输入第"+(i+1)+"辆车的序号:");
num = scanner.nextInt();
}
//将用户选择的车型的编号保存到数组里,便于以后统计使用
nums[i]=num-1;//这里为什么要减1我还没想明白,求大神解释一下。。。。。。。。。。
totalPrice+=cars[num-1].getPrice();
}
System.out.println("请输入租车天数:");
days = scanner.nextInt();
//统计功能
System.out.println("您的账单:");
System.out.println("***可载人的车有:");
//定义总载人量并初始化为0
int passengers = 0;
//如载人数为0则表示不能载人,循环输出即可。
for(int i=0;i<sum;i++){
if(cars[nums[i]].getPassengerCar()!=0){
passengers += cars[nums[i]].getPassengerCar();
System.out.print(cars[nums[i]].getName()+"\t");
}
}
System.out.println("共载人:"+ passengers +"人");
System.out.println("***可载货的车有:");
//定义总载货量并初始化为0
int goods = 0;
//同理,载货量为0表示无法载货,循环输出。
for(int i=0;i<sum;i++){
if(cars[nums[i]].getCargo()!=0){
goods += cars[nums[i]].getCargo();
System.out.print(cars[nums[i]].getName()+"\t");
}
}
System.out.println("共载货:"+ goods +"吨");
//总价*天数=最终价格
System.out.println("***租车总价格:"+(totalPrice*days)+"元");
}
}