为了账号安全,请及时绑定邮箱和手机立即绑定

最后一节课的例子 请慕友指正!

首先是Car父类  Car.java

package com.imooc.carsystem;

public class Car {
    private String name;            //车辆名称
    private int rent;               //车辆租金
    private int volPerson;          //车辆载人容量
    private int volGoods;           //车辆载货容量

    public Car(String name,int rent,int volPerson,int volGoods){
        this.name = name;
        this.rent = rent;
        this.volPerson = volPerson;
        this.volGoods = volGoods;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getRent() {
        return rent;
    }

    public void setRent(int rent) {
        this.rent = rent;
    }

    public int getVolPerson() {
        return volPerson;
    }

    public void setVolPerson(int volPerson) {
        this.volPerson = volPerson;
    }

    public int getVolGoods() {
        return volGoods;
    }

    public void setVolGoods(int volGoods) {
        this.volGoods = volGoods;
    }

    //租车价格
    public double sumprice(int days,int rent){
        return days*rent;
    }
}


客车子类  Coach.java

package com.imooc.carsystem;

public class Coach extends Car {
    //客车
    public Coach(String name, int rent, int volPerson, int volGoods) {
        super(name, rent, volPerson, volGoods);
    }
}


货车子类 Truck.java

package com.imooc.carsystem;

public class Truck extends Car {
    //货车
    public Truck(String name, int rent, int volPerson, int volGoods) {
        super(name, rent, volPerson, volGoods);
    }
}


皮卡子类 Pickup.java

package com.imooc.carsystem;

public class Pickup extends Car {
    //皮卡
    public Pickup(String name, int rent, int volPerson, int volGoods) {
        super(name, rent, volPerson, volGoods);
    }
}


测试执行类  Init.java

package com.imooc.carsystem;
import java.util.Arrays;
import java.util.Scanner;

public class Init {

    public static Car[] cars = {
            new Coach("奥迪A4",500,4,0),
            new Coach("马自达6",400,4,0),
            new Pickup("皮卡雪6",450,4,2),
            new Coach("金龙",800,20,0),
            new Truck("松花江",400,0,4),
            new Truck("依维柯",1000,0,20)
    };
    public static int[] carNums;
    public static Scanner input = new Scanner(System.in);

    public static void main(String[] args) {
        System.out.println("欢迎使用答答租车系统");
        System.out.println("你是否要租车:1是 0否");

        //Scanner input = new Scanner(System.in);
        int isTrue = input.nextInt();
        if(isTrue == 1){
            System.out.println("您可租车的类型及价目表");
            System.out.println("序号\t汽车名称\t租金\t\t容量");
            int i = 1;
            for(Car car : cars){
                if(car instanceof Coach){
                    System.out.println(""+i+".\t"+car.getName()+"\t"+car.getRent()+"元/天\t\t"+"载人:"+car.getVolPerson()+"人");
                }else if(car instanceof Pickup){
                    System.out.println(""+i+".\t"+car.getName()+"\t"+car.getRent()+"元/天\t\t"+"载人:"+car.getVolPerson()+"人\t载货:"+car.getVolGoods()+"吨");
                }else if(car instanceof Truck){
                    System.out.println(""+i+".\t"+car.getName()+"\t"+car.getRent()+"元/天\t\t"+"载货:"+car.getVolGoods()+"吨");
                }
                i++;
            }
            System.out.println("请输入你要租车的数量");
            carNums = new int[input.nextInt()];
            for(int j=0;j<carNums.length;j++){
                System.out.println("请输入第"+(j+1)+"的序号:");
                carNums[j] = input.nextInt();
            }
            //System.out.println(Arrays.toString(carNums));
            System.out.println("请输入租车的天数:");
            int days = input.nextInt();

            System.out.println("您的账单:");
            System.out.println("可载人的车有:");

            int sumPerson = 0;      //合计载人量
            int sumGoods = 0;       //合计载货量
            String personCar = "";
            String goodsCar = "";
            double sumPrice = 0;

            for(int k=0;k<carNums.length;k++){
                if(cars[carNums[k] - 1] instanceof Coach || cars[carNums[k] - 1] instanceof Pickup){
                    personCar +=  cars[carNums[k] - 1].getName()+"\t";
                    sumPerson += cars[carNums[k] - 1].getVolPerson();
                }

                if(cars[carNums[k] - 1] instanceof Truck || cars[carNums[k] - 1] instanceof Pickup){
                    goodsCar += cars[carNums[k] - 1].getName()+"\t";
                    sumGoods += cars[carNums[k] - 1].getVolGoods();
                }
                sumPrice += cars[carNums[k] - 1].sumprice(days,cars[carNums[k] - 1].getRent());
            }

            System.out.println(personCar+"\t共载人:"+sumPerson);
            System.out.println("***载货的车有:");
            System.out.println(goodsCar+"\t共载货:"+sumGoods);
            System.out.println("***租车总价格:"+sumPrice+"元");


        }else{
            System.out.println("****谢谢您的使用****");
        }
    }
}


正在回答

举报

0/150
提交
取消

最后一节课的例子 请慕友指正!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信