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

Java入门第二季 - 达达租车系统

标签:
Java

分别创建了三个类:车类、方法类、入口类。

Car.java

class Car {
    private String name;
    private int rent;
    private int mannedNum;
    private int goodsNum;

    Car(String name, int rent, int mannedNum, int goodsNum) {
        this.name = name;
        this.rent = rent;
        this.mannedNum = mannedNum;
        this.goodsNum = goodsNum;
    }

    String getName() {
        return name;
    }

    int getRent() {
        return rent;
    }

    int getMannedNum() {
        return mannedNum;
    }

    int getGoodsNum() {
        return goodsNum;
    }

    @Override
    public String toString() {
        String str1 = mannedNum != 0 ? "载人:" + mannedNum + "人" + "\t" : "";
        String str2 = goodsNum != 0 ? "载货:" + goodsNum + "吨" : "";
        return name + "\t" + rent + "元/天\t\t" + str1 + str2;
    }
}

Method.java

import java.util.Scanner;

class Method {
    private static Scanner scan = new Scanner(System.in);

    static Car[] list() {
        Car[] cars = new Car[3];
        cars[0] = new Car("奥迪A4", 500, 4, 0);
        cars[1] = new Car("皮卡雪", 700, 4, 2);
        cars[2] = new Car("松花江", 900, 0, 10);
        System.out.println("序号\t名称\t\t租金\t\t\t容量");
        for (int i = 0; i < cars.length; i++) {
            System.out.println((i + 1) + "\t" + cars[i]);
        }
        return cars;
    }

    static int carNum() {
        int carnum = 0;
        for (; carnum <= 0  carnum >= 100; ) {
            System.out.println("请输入你要租车的数量(1-99):");
            carnum = scan.nextInt();
        }
        return carnum;
    }

    static void bill(Car[] cars, int num) {
        int sum = 0;
        int mannedNum = 0;
        int goodsNum = 0;
        String car = "";
        String truck = "";

        for (int i = 1; i <= num; i++) {
            int j = -1;
            for (; j < 0  j > cars.length - 1; ) {
                System.out.println("请输入第" + i + "辆车的序号:");
                j = (scan.nextInt() - 1);
            }
            sum += cars[j].getRent();
            if (cars[j].getMannedNum() != 0) {
                mannedNum += cars[j].getMannedNum();
                car += cars[j].getName() + "\t";
            }
            if (cars[j].getGoodsNum() != 0) {
                goodsNum += cars[j].getGoodsNum();
                truck += cars[j].getName() + "\t";
            }
        }
        int day = 0;
        for (; day <= 0  day >= 100; ) {
            System.out.println("请输入租车天数(1-99):");
            day = scan.nextInt();
        }
        sum = sum * day;

        System.out.println("————————————————————————\n你的账单:");
        System.out.println("***共租了" + num + "辆车。");
        System.out.println("***可载人的车有:");
        System.out.println(car + "  可载人数:" + mannedNum + "人");
        System.out.println("***可载货的车有:");
        System.out.println(truck + "  可载货物:" + goodsNum + "吨");
        System.out.println("***租车总价格:" + sum + "元\n——————————————————");
    }
}

Initial.java

import java.util.Scanner;

public class Initial {
    private static Scanner scan = new Scanner(System.in);

    public static void main(String[] args) {
        System.out.println("你是否要租车:1是 0否" + "\n请输入:");
        int num = scan.nextInt();
        for (; num != 1 && num != 0; ) {
            System.out.println("输入有误,请重新输入:");
            num = scan.nextInt();
        }
        if (num == 0) {
            System.out.println("再见!");
        } else {
            System.out.println("欢迎使用,你可租车的类型及其价目表:");
            //打印价目表,保存对象
            Car[] cars = Method.list();
            //获取租车数量,保存车数
            int carnum = Method.carNum();
            //获取租车细节并打印账单,传入对象和车数
            Method.bill(cars, carnum);
            System.out.println("完成租车!");
        }
        scan.close();
    }
}
点击查看更多内容
12人点赞

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

评论

作者其他优质文章

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

100积分直接送

付费专栏免费学

大额优惠券免费领

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

举报

0/150
提交
取消