继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

达达租车系统

7652963
关注TA
已关注
手记 1
粉丝 0
获赞 38

参考了别人的代码,有些代码还是很繁琐,第二季中学的知识点用的不多。载货量和载客量同时定义在了父类里,主要是因为写到后面计算总量的时候实在想不出其他办法了。
Car 父类
package imooc;

public class Car {
String name;
int price;
int passengerCapacity;
int goodsCapacity;

 public Car(String name,int price,int passengerCapacity,int goodsCapacity){
     this.name=name;
     this.price=price;
     this.passengerCapacity=passengerCapacity;
     this.goodsCapacity=goodsCapacity;
 }

 public void print()
 {
     System.out.println(""+name+"\t"+price+"元/天"+"\t"+"载人:"+passengerCapacity+" 载货:"+goodsCapacity+"吨");
 }
 public String getName(){
     return this.name=name; 
 }
 public int getPassengerCapacity()
 {
     return this.passengerCapacity=passengerCapacity;
 }
 public int getGoodsCapcity()
 {
     return this.goodsCapacity=goodsCapacity;
 }
 public int getPrice()
 {
     return this.price=price;
 }  

}
Passenger 子类
package imooc;

public class Passenger extends Car {

public Passenger(String name, int price,int passengerCapacity,int goodsCapacity) {
    super(name, price, passengerCapacity, goodsCapacity);

}

}

Pickup子类
package imooc;

public class Pickup extends Car {

public Pickup(String name,int price,int passengerCapacity,int goodsCapacity){
    super(name,price, passengerCapacity, goodsCapacity);
}

}

Goods子类
package imooc;

public class Goods extends Car {

public Goods(String name,int price,int passengerCapacity,int goodsCapacity){
    super(name,price, passengerCapacity, goodsCapacity);

}   

}
主代码
package imooc;

import java.util.ArrayList;
import java.util.Scanner;

public class Item {
private ArrayList<Car> car=new ArrayList<Car>();

public void add(Car i){
    car.add(i);
}
public void list(){
    int k=1;
    for(Car i:car){
        System.out.print(k+"\t");
        i.print();
        k++;
    }
}

public static void main(String[] args) {
    Item item=new Item();
    System.out.println("欢迎使用达达租车系统。");
    System.out.println("您是否要租车?1:租车,2:退出系统");

    Scanner in =new Scanner(System.in);
    int input=in.nextInt();
    if(input==1)
    {
        System.out.println("可选车型一览表:");
        System.out.println("序号\t"+"汽车名车\t"+"租金\t"+"容量\t");
        item.add(new Passenger("奥迪",500,4,0));
        item.add(new Passenger("马自达",400,4,0));
        item.add(new Pickup("皮卡雪",450,4,20));
        item.add(new Passenger("金龙",800,20,0));
        item.add(new Goods("松花江",400,0,4));
        item.add(new Goods("依维柯",1000,0,20));
        item.list();

        Car [] car={new Passenger("奥迪",500,4,0),new Passenger("马自达",400,4,0),new Pickup("皮卡雪",450,4,20),new Passenger("金龙",800,20,0),new Goods("松花江",400,0,4),new Goods("依维柯",1000,0,20)};

        System.out.print("请输入租车数量:");
        int rentNums=in.nextInt();

        int[] carQuantity=new int[rentNums];
        for (int i=0;i<carQuantity.length;i++)
        {
            carQuantity[i]=0;
        }

        for (int i=0; i<rentNums; i++)
            {
                System.out.print("请输入第"+(i+1)+"辆车的序号:");
                int xuhao=in.nextInt();
                carQuantity[i]=xuhao-1;
            }

        System.out.print("请输入租车天数:");
        int dayNums=in.nextInt();
        System.out.println("你的账单:");
        System.out.println("车名"+"\t"+"租金"+"\t"+"数量"+"\t"+"载客量"+"\t"+"载货量"+"\t");
        for (int i=0; i<rentNums;i++)
        {
            System.out.println(car[carQuantity[i]].getName()+"\t"+car[carQuantity[i]].getPrice()+"元/天"+"\t"+1+ "\t"+car[carQuantity[i]].getPassengerCapacity()+"\t"+car[carQuantity[i]].getGoodsCapcity()+"吨");
        }   
        System.out.println("总量为:"); 
        System.out.println("租车数量"+"\t"+"总载客量"+"\t"+"总载货量"+"\t"+"总金额"+"\t");
        int passengerSum=0;
        int goodsSum=0;
        int priceSum=0;
        for (int i=0;i<rentNums;i++)
        {
            passengerSum+=car[carQuantity[i]].getPassengerCapacity();
            goodsSum+=car[carQuantity[i]].getGoodsCapcity();
            priceSum+=car[carQuantity[i]].getPrice()*dayNums;
        }
        System.out.println(rentNums+"\t"+passengerSum+"\t"+goodsSum+"\t"+priceSum);
    }
    else
    {
        System.out.println("谢谢光顾,欢迎下次再来。");

    }
}

}

运行结果:
欢迎使用达达租车系统。
您是否要租车?1:租车,2:退出系统
1
可选车型一览表:
序号 汽车名车 租金 容量
1 奥迪 500元/天 载人:4 载货:0吨
2 马自达 400元/天 载人:4 载货:0吨
3 皮卡雪 450元/天 载人:4 载货:20吨
4 金龙 800元/天 载人:20 载货:0吨
5 松花江 400元/天 载人:0 载货:4吨
6 依维柯 1000元/天 载人:0 载货:20吨
请输入租车数量:3
请输入第1辆车的序号:4
请输入第2辆车的序号:2
请输入第3辆车的序号:3
请输入租车天数:2
你的账单:
车名 租金 数量 载客量 载货量
金龙 800元/天 1 20 0吨
马自达 400元/天 1 4 0吨
皮卡雪 450元/天 1 4 20吨
总量为:
租车数量 总载客量 总载货量 总金额
3 28 20 3300

打开App,阅读手记
12人推荐
发表评论
随时随地看视频慕课网APP

热门评论

for(Car i:car)这个循环是什么意思?

查看全部评论