手记

java基础第二季最后一节课练习

Car.java
package com.imooc;

public abstract class Car {//这是载客车
private int amount;//载客数量
public abstract void run();

public int getAmount() {
    return amount;
}
public void setAmount(int amount) {
    this.amount = amount;
}

}
CarGo.java
package com.imooc;

public interface CarGo extends CarGoB{//这是载货车
double ton=2;
public void freight();

}
CarGo2.java
package com.imooc;

public interface CarGo2 extends CarGoB{//这是载货车
double ton=4;
public void freight2();

}
CarGo3.java
package com.imooc;

public interface CarGo3 extends CarGoB{//这是载货车
double ton=20;
public void freight3();

}
CarGoB.java
package com.imooc;

public interface CarGoB {
public double ton=0;
}
LCarGo.java
package com.imooc;

public class LCarGo extends Car implements CarGo3{
public void run(){
System.out.println("这是辆大货车,载客为0");
}

@Override
public void freight3() {
    // TODO Auto-generated method stub
    System.out.println("这辆车能载大货物");
}

}
SCarGo.java
package com.imooc;

public class SCarGo extends Car implements CarGo,CarGo2{

@Override
public void run() {
    // TODO Auto-generated method stub
    System.out.println("这是轻型货车,载客为0");
}

@Override
public void freight() {
    // TODO Auto-generated method stub
    System.out.println("这辆车能载小货物");
}

@Override
public void freight2() {
    // TODO Auto-generated method stub
    System.out.println("这辆车能载小货物");
}

}
Initial.java
package com.imooc;

import java.util.Scanner;

public class Initial {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Car aoDi=new SCarGo();//建立一个载人的奥迪对象
    aoDi.setAmount(4);
    CarGoB CaoDi=new SCarGo();//建立一个载货的奥迪对象

    Car maZiDa=new SCarGo();//载人马自达
    maZiDa.setAmount(4);
    CarGoB CmaZiDa=new SCarGo();//载货马自达

    Car piKaXue=new SCarGo();//载人皮卡雪
    piKaXue.setAmount(4);
    CarGo CpiKaXue=new SCarGo();//载货皮卡雪

    Car jinLong=new LCarGo();//载人金龙
    jinLong.setAmount(20);
    CarGoB CjinLong=new LCarGo();//载货金龙

    Car sHuaJiang=new SCarGo();//载人松花江
    sHuaJiang.setAmount(0);
    CarGo2 CsHuaJiang=new SCarGo();//载货松花江

    Car yWeiKe=new LCarGo();//载人依维柯
    yWeiKe.setAmount(0);
    CarGo3 CyWeiKe=new LCarGo();//载货依维柯

    System.out.println("欢迎使用答答租车系统:");
    System.out.println("您是否要租车:1是 0否");
    Scanner in=new Scanner(System.in);//进行输入操作
    int input=in.nextInt();//输入整型
    if(input==1){
        System.out.println("您可租车的类型及其价目表:");
        System.out.println("序号 汽车名称 租金             容量");
        System.out.println("1.  奥迪A4  500$/天      载人:"+aoDi.getAmount()+"人");
        System.out.println("2.  马自达6 400$/天       载人:"+maZiDa.getAmount()+"人");
        System.out.println("3.  皮卡雪6 450$/天       载人:"+piKaXue.getAmount()+" "+"载货:"+CpiKaXue.ton+"吨");
        System.out.println("4.  金龙           800$/天      载人:"+jinLong.getAmount()+"人");
        System.out.println("5.  松花江      400$/天      载货:"+CsHuaJiang.ton+"吨");
        System.out.println("6.  依维柯    1000$/天      载货:"+CyWeiKe.ton+"吨");

        System.out.println("请输入您要租汽车的数量:");
        int i=in.nextInt();//租车数量
        final int cunI=i;//存租车数量
        int renNum=0;//统计总载人数
        double huoNum=0;//统计总载货量
        double bill=0;//统计租车的总价格

        int[] jiK=new int[i]; ;//建立一个数组,为了存放用户按顺序选择的车编号

        Car[] cheR=new Car[]{aoDi,maZiDa,piKaXue,jinLong,sHuaJiang,yWeiKe};//显示每一辆车的载人数,为了方便计算总载人数

        double[] cheH=new double[6];//显示每一辆车的载货量,为了方便计算载货量          
        {
        cheH[0]=CaoDi.ton;
        cheH[1]=CmaZiDa.ton;
        cheH[2]=CpiKaXue.ton;
        cheH[3]=CjinLong.ton;
        cheH[4]=CsHuaJiang.ton;
        cheH[5]=CyWeiKe.ton;
        }
        double[] che$=new double[]{500,400,450,800,400,1000};//显示每一辆车租一天的价格,为了方便计算总价格

        String[] cheName=new String[]{"奥迪A4","马自达6","皮卡雪6","金龙","松花江","依维柯"};
        for(int j=0;i>0;i--,j++){
            System.out.println("请输入第"+(j+1)+"辆车的序号");

            int k=in.nextInt()-1;//数组是从零开始的,这里-1的操作是为了与数组下标匹配
            jiK[j]=k;//用于存放用户按顺序选择的车编号
            renNum+=cheR[k].getAmount();//获取总载人数
            huoNum+=cheH[k];//获取总载货数
            bill+=che$[k];//获取所租的车一天的总价格
        }

        System.out.println("请输入租车的天数:");
        int tian=in.nextInt();
        bill*=tian;//租车的总价格*租车天数,获取真实租车价格;

        System.out.println("您的账单:");

        System.out.println("***可载人的车有:");
        i=cunI;//重置i,使它为用户输入的值
        for(int j=0;i>0;i--,j++){
            //int k=in.nextInt()-1;//数组是从零开始的,这里-1的操作是为了与数组下标匹配
            if(cheR[jiK[j]].getAmount()>0){//判断载人是否为0,不为0就进行打印车名
                System.out.print(""+cheName[jiK[j]]+" ");//打印车名;
            }               
        }
        System.out.print("共载人:"+renNum+"人");
        System.out.println();

        System.out.println("***可载货的车有:");
        i=cunI;//重置i,使它为用户输入的值
        for(int j=0;i>0;i--,j++){
            //int k=in.nextInt()-1;
            if(cheH[jiK[j]]>0){//判断载货量是否为0,不为0就进行车名打印;
                System.out.print(""+cheName[jiK[j]]+" ");
            }               
        }
        System.out.print("共载货:"+huoNum+"吨");
        System.out.println();

        System.out.println("***租车总价格:"+bill+"元");
    }else{
        System.out.println("期待您下次光临!");
    }

}

}

0人推荐
随时随地看视频
慕课网APP