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

Java入门第二季_阶段练习_Dada租车系统

标签:
Java

emmm....因为以前是先学的c语言这里写的面向对象的思想不多,只创建了一个汽车类
然后new了一个汽车数组对象来保存属性
开始写的时候看到有人创建了3个汽车类就有点复杂了
我是看到一条评论,把不同汽车的载人量和载货量这里两个属性用0区分
比如有的汽车载人量为0,有些汽车载货量为0,这样就简单很多
Main.java

package com.DADA;

import java.util.Scanner;
public class Main {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("欢迎使用DaDa租车系统:");
        System.out.println("您是否要租车:1是 0否");

        Scanner in = new Scanner(System.in);
        int i = in.nextInt();       
        if(i==1) {
            Price price = new Price();

            System.out.println("你可以租车的类型及价目表:");

            price.printprice();

            System.out.println("请输入您要租车的数量:");

            price.countprice();

        }else if(i==0) {
            System.out.println("再见");
        }
    }

}

汽车类

package com.DADA;

public class Car {
    String name;
    int no;
    int dayprice;
    int manned;
    int cargo;

    public Car(int no,String name,int dayprice,int manned,int cargo) {
        this.name = name;
        this.no = no;
        this.dayprice = dayprice;
        this.manned = manned;
        this.cargo = cargo;
    }

    public int getNo() {
        return no;
    }

    public void setNo(int no) {
        this.no = no;
    }

    public int getDayprice() {
        return dayprice;
    }
    public String getName() {
        return name;
    }

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

    public void setDayprice(int dayprice) {
        this.dayprice = dayprice;
    }
    public int getManned() {
        return manned;
    }
    public void setManned(int manned) {
        this.manned = manned;
    }
    public int getCargo() {
        return cargo;
    }
    public void setCargo(int cargo) {
        this.cargo = cargo;
    }
}

打印和输出价格的类,其中一个打印价格表的方法,另一个计算总价格的方法

package com.DADA;

import java.util.Scanner;

public class Price {
     Car[] car = new Car[6];

    public void printprice() {
        System.out.println("序号  汽车名称     租金                 容量");
        System.out.println("1.      奥迪A4       500元/天               载人:4人");
        System.out.println("2.   马自达6      400元/天       载人:4人");
        System.out.println("3.      皮卡雪6      450元/天            载人:4人 载货:2吨");
        System.out.println("4.      金龙         800元/天               载人:20人");
        System.out.println("5.      松花江        400元/天               载货:4吨");
        System.out.println("6.      猛禽F150   1000元/天             载人:4人 载货:20吨");

        car[0] = new Car(1,"奥迪A4",500,4,0);
        car[1] = new Car(2,"马自达6",400,4,0);
        car[2] = new Car(3,"皮卡雪6",450,4,2);
        car[3] = new Car(4,"金龙",800,20,0);
        car[4] = new Car(5,"松花江",400,2,4);
        car[5]= new Car(6,"猛禽F150",1000,4,20);

    }
    public void countprice(){
        //输入租车的数量
        Scanner in = new Scanner(System.in);
        int n =in.nextInt(); 
        while(n>6 || n<=0) {
            System.out.println("输入错误,请重新输入:");
            n = in.nextInt();
        }

        //输入要租车辆的序号
        int[] a = new int[7];
        for(int j=1;j<=n;j++) {
            System.out.println("请输入第"+j+"辆车的序号");
            a[j] = in.nextInt();                //把车辆序号存到数组中
            while(a[j]>6||a[j]<=0) {
                System.out.println("错误车辆序号,重新输入:");
                a[j] = in.nextInt();
            }
        }
        //租车天数
        System.out.println("输入租车天数:");
        int day = in.nextInt();

        //开始计算账单
        System.out.println("您的账单:");        
        String[] str1 = new String[10]; //存载人车辆的名字
        String[] str2 = new String[10];//存载货车辆的名字
        int cp=0;                                   //总载人数
        double cc=0;                            //总载货量

        for(int z=1;z<=n;z++){
            if(car[a[z]-1].manned>0) {

                cp=car[a[z]-1].manned+cp;       

                str1[z] = car[a[z]-1].name; 
            }
            if(car[a[z]-1].cargo>0){

                cc=car[a[z]-1].cargo+cc;

                str2[z] = car[a[z]-1].name;
            }   
}
        System.out.println("***可载人的车有:");
        for(int i=1;i<=n;i++){
            System.out.print(str1[i]+"      ");
        }
        System.out.println("共载人:"+cp+"人");

        if(cc > 0){
            System.out.println("***可载货的车有:");
            for(int i=1;i<=n;i++){
                if(str2[i]==null) {
                    continue;
                }
                System.out.print(str2[i]+"      ");
            }
            System.out.println("共载货:"+cc+"吨");
        }

        double count=0;
        for(int x=1;x<=n;x++){
            count=car[a[x]-1].dayprice+count;
        }
        System.out.println("***租车总价格:"+count*day+"元");
    }
}
点击查看更多内容
27人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消