栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java-day07

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java-day07

基本数据类型的变量只能指向常量池

        4类8种

        byte、short、int、long、float、double、char、Boolean

引用数据类型的变量(指针,引用)只能指向堆

        (1、类(对象);2、数组)

        int[]、byte[]、Goods、......

即可以指向常量池,又可以指向堆

        数据类型(一共是9个)

        Byte、Short、Integer、Long、Float、Double、Character、Boolean、String

数据类型 变量名=new 构造方法()---指向堆

数据类型 变量名=直接量---指向常量池

String的底层是什么?

        JDK1.8之前是char[]

        JDK1.8以后是byte[]

Car数据类

package HomeHork02;

public class Car {
    private String brand;
    private String model;
    private String color;
    private String leaser;
    private Double rent;
    private Integer day;
    private Integer state;

    public void show(){
        System.out.println("******************************");
        System.out.print("品牌:"+this.brand);
        System.out.print("t型号:"+this.model);
        System.out.print("t颜色:"+this.color);
        System.out.println("t状态:"+((this.state==0) ? "未出租":"已出租"));
        System.out.println("******************************");
    }

    public String getBrand() {
        return brand;
    }

    public void setBrand(String brand) {
        this.brand = brand;
    }

    public String getModel() {
        return model;
    }

    public void setModel(String model) {
        this.model = model;
    }

    public String getColor() {
        return color;
    }

    public void setColor(String color) {
        this.color = color;
    }

    public String getLeaser() {
        return leaser;
    }

    public void setLeaser(String leaser) {
        this.leaser = leaser;
    }

    public Double getRent() {
        return rent;
    }

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

    public Integer getDay() {
        return day;
    }

    public void setDay(Integer day) {
        this.day = day;
    }

    public Integer getState() {
        return state;
    }

    public void setState(Integer state) {
        this.state = state;
    }
}

Demo测试类

package HomeHork02;

import java.util.Scanner;

public class Demo {
    static Scanner sc = new Scanner(System.in);
    static Car[] arr = new Car[10];

    static {
        //静态代码块,在类加载的时候运行,我们可以在静态代码块中创建几个car对象放入数组中
        Car car1 = new Car();
        car1.setBrand("奔驰");
        car1.setModel("S300");
        car1.setColor("黑色");
        car1.setState(0);
        arr[0] = car1;

        Car car2 = new Car();
        car2.setBrand("宝马");
        car2.setModel("x5");
        car2.setColor("黑色");
        car2.setState(0);
        arr[1] = car2;

        Car car3 = new Car();
        car3.setBrand("卡丁车");
        car3.setModel("越野蓝");
        car3.setColor("蓝色");
        car3.setState(0);
        arr[2] = car3;

        Car car4 = new Car();
        car4.setBrand("三轮车");
        car4.setModel("飞利浦");
        car4.setColor("钻石粉");
        car4.setState(0);
        arr[3] = car4;

        Car car5 = new Car();
        car5.setBrand("自行车");
        car5.setModel("共享单车");
        car5.setColor("蓝色");
        car5.setState(0);
        arr[4]=car5;
    }

    public static void main(String[] args) {
        int choice = 0;
        do {
            System.out.println("1、添加汽车");
            System.out.println("2、删除汽车");
            System.out.println("3、查看汽车");
            System.out.println("4、汽车出租");
            System.out.println("5、汽车归还");
            System.out.println("请输入你的选择:");
            choice = sc.nextInt();
            switch (choice) {
                case 1:
                    System.out.println("添加汽车");
                    addcar();
                    break;
                case 2:
                    System.out.println("删除汽车");
                    dropcar();
                    break;
                case 3:
                    System.out.println("查看汽车");
                    display();
                    break;
                case 4:
                    System.out.println("汽车出租");
                    lease();
                    break;
                case 5:
                    System.out.println("汽车归还");
                    back();
                    break;
                default:
                    break;
            }
        } while (choice != 5);
        System.out.println("退出");
    }

    //添加汽车
    private static void addcar() {
        System.out.println("**********进入添加汽车系统********");
        Car car = new Car();
        System.out.println("输入汽车品牌:");
        car.setBrand(sc.next());
        System.out.println("输入汽车型号:");
        car.setModel(sc.next());
        System.out.println("输入汽车颜色:");
        car.setColor(sc.next());
        System.out.println("输入汽车状态:");
        car.setState(sc.nextInt());
        car.setState(0);
        for (int i = 0; i < arr.length; i++) {
            arr[i] = car;
        }
        System.out.println("汽车添加成功");
    }

    //删除汽车
    private static void dropcar() {
        System.out.println("**********进入删除汽车系统********");
        int carid = sc.nextInt();
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] == arr[carid]) {
                arr[i] = null;
                System.out.println("第" + (i + 1) + "汽车删除成功");
                break;
            }
        }
    }

    //查看汽车
    private static void display() {
        System.out.println("**********进入查看汽车系统********");
        for (int i = 0; i < arr.length; i++) {
            System.out.println((i + 1) + "号汽车");
            if (arr[i] == null) {
                System.out.println("空");
            } else if (arr[i].getState()==0){
                arr[i].show();
            }else {
                System.out.println("该车已被租");
            }
        }
    }

    //租车
    private static void lease() {
        System.out.println("**********进入租借汽车系统********");
        display();
        System.out.println("请输入汽车:");
        int brandid = sc.nextInt()-1;
        Car car=arr[brandid];
        if (car==null) {
            System.out.println("该汽车不存在,请重新选择");
        } else if (car.getState()!=0){
            System.out.println("该车已被出租");
            return;
        }else{
            System.out.println("请输入租车人:");
            car.setLeaser(sc.next());
            System.out.println("请输入日租金:");
            car.setRent(sc.nextDouble());
            System.out.println("请输入出租的天数:");
            car.setDay(sc.nextInt());
            System.out.println(car.getBrand()+car.getModel()+"出租成功!");
            car.setState(1);
        }
    }

    //还车
    private static void back() {
        System.out.println("**********进入归还汽车系统********");
        display();
        System.out.println("请输入要归还的汽车:");
        int backid = sc.nextInt()-1;
        Car car=arr[backid];
        if (car==null){
            System.out.println("该车不存在,请重新输入");
        }else if (car.getState()==0){
            System.out.println("该车已归还,无需归还");
        }else {
            double pay=car.getDay()*car.getRent();
            System.out.println("您一共需要支付"+pay+"元");
            car.setLeaser(null);
            car.setRent(null);
            car.setDay(null);
            car.setState(0);
            System.out.println(car.getBrand()+car.getModel()+"归还成功");
        }
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1000182.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号