最近发现的两个问题修改之后的代码
package com.java.java06;
import java.util.Scanner;
public class Initail{
public static void main(String[] args) {
//创建数组用来保存车辆信息
Car[] cars = {new Bus(1, "奔驰", 1800, 5), new Bus(2, "宝马", 2400, 5), new Bus(3, "金龙", 1200, 20), new Truck(4, "标志", 1500, 20), new Truck(5, "东风", 1100, 12), new Pickup(6, "瑞奇", 1000, 4, 6)};
//创建Scanner对象获取用户输入信息
Scanner input = new Scanner(System.in);
System.out.println("欢迎使用答答租车系统,请问您需要租车吗: 1.是 ,2.否 ");
//条件循环判断用户是否需要租车
while(true){
//获取用户输入信息
int welcome = input.nextInt();
//判断用户输入的信息
if(welcome == 1){
//输出提示
System.out.println("欢迎来到答答租车,以下是我们提供出租的车辆及价格表:" + "\n" + "序号\t" + "汽车名称\t " + "租金\t\t" + "容量 ");
//用for循环输出数组中保存的车辆信息
for(int i = 0; i < cars.length; i++){
cars[i].information();
}
//创建变量保存用户租金总和
int sum = 0;
//创建变量保存用户租车总数
int sum1 = 0;
//条件循环用户租车信息
while(true){
//输出提示
System.out.println("您好,请问您想要租什么车呢?确定好了的话请输入对应的序号:");
//获取用户输入的车辆序号
int No = input.nextInt();
//判断用户输入的车辆序号
if(No > 0 && No < cars.length + 1){
//输出提示
System.out.println("请问您需要租几辆呢:");
//获取用户输入的租车数量
int Quantity = input.nextInt();
//计算用户所租车辆租金
sum = sum + cars[No-1].rent * Quantity;
//计算用户租车数量
sum1 = sum1 + Quantity;
//输出提示
System.out.println("恭喜,您成功租了" + sum1 + "辆车!" + "请问您是继续租其他类型的车还是选择去结账呢:1.继续 ,2.结账");
while(true){
//获取用户输入确认信息
int confirm = input.nextInt();
//判断用户输入的确认信息
if(confirm == 1){
//输出提示
System.out.println("您本次租车信息已记录,您可以继续选择其他类型车辆!");
//执行下一次循环
break;
}else if(confirm == 2){
//输出提示
System.out.println("感谢您对我们的支持,正在为您结算中,请稍后...");
//输出用户租车数据
System.out.println("您的账单如下:" + "\n" + "您租的车辆总数为:" + sum1 + "\n" + "您租车所需的金额合计为:" + sum + "\n" + "系统将自动从您的账中扣并为您生成账和票凭据,您可以自行查看并打印,您是否确认:1.确认付款 , 2.取消退出");
while(true){
//获取用户输入确认信息
int confirm1 = input.nextInt();
//判断用户输入的确认信息
if(confirm1 == 1){
//输出交易信息
System.out.println("订单确认,付中..." + "\n" + "付成功,正在为您生成账和票..." + "\n" + "交完成,我们将尽快为您货!");
System.out.println("您好,售后部很高兴为您服务,请问您需要继续重新下单还是退出本系统呢: 1.继续 ,2.退出 ");
//获取用户输入确认信息
int confirm2 = input.nextInt();
//判断用户输入的确认信息
if(confirm2 == 1){
System.out.println("欢迎使用答答租车系统,请问您需要租车吗: 1.是 ,2.否 ");
break;
}else if(confirm2 == 2){
//输出信息
System.out.println("感谢您对我们的服务的支持,欢迎下次光临,再见!");
//退出
return;
}else{
//用户输入了错误信息,提示重新输入
System.out.println("抱歉,您输入的序号有误!请输入正确的确认序号:");
}
//退出系统
return;
}else if(confirm1 == 2){
//输出信息
System.out.println("很遗憾本次没有给您带来满意,下次我们一定会努力做到更好,感谢您的光临,再见!");
//退出
return;
}else{
//用户输入了错误信息,提示重新输入
System.out.println("抱歉,您输入的序号有误!请输入正确的确认序号:");
}
//退出系统
return;
}
}else{
//用户输入了错误信息,提示重新输入
System.out.println("抱歉,您输入的数据有误!请重新输入: 1.继续 2.结账");
}
}
}else{
//用户输入了错误信息,提示重新输入
System.out.println("抱歉,您输入的序号有误!请输入上面目录中对应的序号:");
}
}
}else if(welcome == 2){
//输出提示并关闭租车系统
System.out.println("非常抱歉,我们只提供租车的服务,感谢您的光临,再见!");
return;
}else{
//用户输入了错误信息,提示重新输入
System.out.println("抱歉,您输入的数据有误!请重新输入: 1.是 2.否");
}
}
}
}