汽车租赁共出租多种轿车和客车,出租费用以日为单位计算,出租车型和信息如下: 车型 类别 日费用 别克GL8 轿车 600 宝马550i 轿车 500 林荫大道 轿车 300 小金杯 客车 800 大金杯 客车 1500 |
如果采用面向对象思想进行设计,该如何编写程序计算汽车租赁价呢?
package com.day10.homework;
import java.util.Random;
import java.util.Scanner;
public class Car {//创建Car类
private int day;// 定义使用天数
private int carType;//定义车类型
private int carBrand;//定义车品牌
private Double carPrice; //定义车价格
private int carModel;//定义车型号
public Car(){ //创建Car的无参构造方法
this.day =day;
this.carType = carType;
this.carModel = carBrand;
this.carModel= carModel;
}
/**
* 获取天数
* @return
*/
public int getDay() {
return day;
}
/**
* 设置天数
* @param day
*/
public void setDay(int day) {
this.day = day;
}
/**
* 设置车的价格
* @param carPrice
* @return
*/
public double setcarPrice(double carPrice){
return this.carPrice = carPrice*day;
}
/**
* 获取车的价格
* @return
*/
public Double getCarPrice() {
return carPrice;
}
/**
* 获取车的型号
* @return
*/
public int getCarModel() {
return carModel;
}
/**
* 设置车的型号
* @param carModel
*/
public void setCarModel(int carModel) {
this.carModel = carModel;
}
/**
* 获取车品牌
* @return
*/
public int getCarBrand() {
return carBrand;
}
/**
* 设置车的品牌
* @param carBrand
*/
public void setCarBrand(int carBrand) {
this.carBrand = carBrand;
}
/**
* 获取车类型
* @return
*/
public int getCarType() {
return carType;
}
/**
* 设置车类型
* @param carType
*/
public void setCarType(int carType) {
this.carType = carType;
}
/**
* 选型判断
*/
public void outputTotle() {
//0:轿车 别克GL8 1:轿车 宝马550i 2:轿车 林荫大道 3:客车 小金杯 4:客车 大金杯
int[] arr = {600, 500, 300, 800, 1500};
switch (this.carModel) {
case 1://车类型 选轿车
if (this.carBrand == 1) {//车品牌 1:轿车 宝马550i
this.setcarPrice(arr[1]);
System.out.println("顾客您好,您需要支付的租赁费用为" + this.getCarPrice());
} else if (this.carBrand == 2) {//车品牌 别克
if (this.carType == 2) {//车型号 GL8
this.setcarPrice(arr[0]); //0:轿车 别克GL8
System.out.println("顾客您好,您需要支付的租赁费用为" + this.getCarPrice());
} else if (this.carType == 3) {//车型号 林荫大道
this.setcarPrice(arr[2]); //2:轿车 林荫大道
System.out.println("顾客您好,您需要支付的租赁费用为" + this.getCarPrice());
} else {
System.out.println("输入有误请重新输入!");
}
} else {
System.out.println("输入有误请重新输入!");
}break;
case 2://车类型 选客车
if (this.carBrand == 3) {//车品牌 小金杯
this.setcarPrice(arr[3]); //3:客车 小金杯
System.out.println("顾客您好,您需要支付的租赁费用为" + this.getCarPrice());
} else if (this.carBrand == 4) {//车品牌 大金杯
this.setcarPrice(arr[4]); //4:客车 大金杯
System.out.println("顾客您好,您需要支付的租赁费用为" + this.getCarPrice());
} else {
System.out.println("输入有误请重新输入!");
}break;
}
}
public void getCarpass(){
Random random = new Random();
int num = random.nextInt(33);
int num1 = random.nextInt(27);
String str = "京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领";
String letter = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char[] s1 = str.toCharArray();
char[] s2 = letter.toCharArray();
System.out.print(String.valueOf(s1[num])+String.valueOf(s2[num1]));
for(int i=1;i<6;i++) {
int temp=(int)random.nextInt(i)+1;
System.out.print(temp);
}
System.out.println();
}
public static void main(String[] args) {
Car car1 = new Car();
Scanner scanner = new Scanner(System.in);
System.out.println("欢迎来到汽车租赁公司:");
System.out.println("请输入要租赁的天数:");
car1.day = scanner.nextInt(); //要租赁的输入天数
System.out.println("请输入要租赁的汽车类型(1:轿车 2:客车):");
car1.carModel = scanner.nextInt(); //输入汽车类型
System.out.println("请输入要租赁的汽车品牌(1:宝马 2:别克):");
car1.carBrand = scanner.nextInt(); //输入要租赁的汽车品牌
System.out.println("请输入轿车的型号(2:GL8,3:林荫大道):");
car1.carType = scanner.nextInt(); //输入轿车的型号
System.out.println("分配给您的汽车排号是:");
car1.getCarpass();
car1.outputTotle(); //进入到outputTotle方法,进行判断
}
}