自己写的租车程序,感觉前面很多知识没有用到,请指正

来源:12-1 综合练习

忆侠客

2016-08-04 17:39

汽车父类

package com.imooc;
public class Car {
 public String name;
 public int price;
 public int ton;
 public int people;
 public void car(String name1,int price1,int ton1,int peple1){
  name=name1;
  price=price1;
  ton=ton1;
  people=peple1;
 }

}

测试程序

package com.imooc;
import java.util.Scanner;
public class Initial extends Car {
 
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  //初始化车辆信息
  int carNum=8;
  Car car0[]=new Car[carNum];
  for(int i=0;i<car0.length;i++){
     car0[i]=new Car();
    }
     car0[0].car("奥迪A4", 500, 0, 4);
     car0[1].car("马自达6", 400, 0, 4);
     car0[2].car("皮卡雪6", 450, 2, 4);
     car0[3].car("金龙               ", 800, 0, 20);
     car0[4].car("松花江           ", 400, 4, 0);
     car0[5].car("依维柯           ", 1000, 20, 0);
     car0[6].car("polo ", 300,  0, 4);
     car0[7].car("桑塔纳           ", 350, 0, 4);
     System.out.println("欢迎使用滴滴租车系统!"+"\n"+"您是否要租车:1是 0否");
  Scanner str=new Scanner(System.in);
       
        //显示所有车辆信息
        if (str.nextInt()==1) {
         //调用显示车辆信息的方法
         displayInfo(carNum,car0);
        }else {
         //调用退出方法。
          exit();
        }
        //输入租用的汽车数量
        System.out.println("请输入您要租的汽车数量:");
        Scanner str1=new Scanner(System.in);
       
        //用数组num 存储选择车的序号
        int n=str1.nextInt();
        int[] num=new int[n];
        for(int i=1;i<=n;i++){
         System.out.println("请输入第"+i+"辆车的序号:");
         Scanner str2=new Scanner(System.in);
         num[i-1]=str2.nextInt();
        }
       
        //输入租的天数
        System.out.println("请输入您要租车的天数:");
        Scanner str11=new Scanner(System.in);
        int days=str11.nextInt();
        //计算账单
        calculate(days,num,car0);
 }
 
 //显示车辆信息方法
    public static void displayInfo(int num, Car car[]){
     int i =num;
     int sn=0;
     String[] header=new String[]{"序号    "    ,"汽车名称      ","租金             ","容量"};
     for(int n=0;n<header.length;n++){
      System.out.print(header[n]+"   ");
     }
     System.out.print("\n");
     for(int j=0; j<i;j++ ){
      sn=j+1;
      System.out.println(sn+".   "+car[j].name+"   "+car[j].price+"/天"+"     "+"载人:"+
      car[j].people+"人"+" "+"载货:"+car[j].ton+"吨");
     }
    }
 
    //计算统计车型,可载人数,吨位,价格
    public static void calculate(int days,int num[],Car car[]){
     int people=0;
     float price=0.0f;
     int ton=0;
     String[] peopleCar=new String[num.length]; //存储载人车辆名称
     String[] goodsCar=new String[num.length];  //存储载货车辆名称
     for (int i=0; i<num.length;i++){
      if(car[num[i]-1].people>0){
       peopleCar[i]=car[num[i]-1].name;
       people+=car[num[i]-1].people;
      }
      if(car[num[i]-1].ton>0){
       goodsCar[i]=car[num[i]-1].name;
       ton+=car[num[i]-1].ton;
      }
      price=price+car[num[i]-1].price;
     }
     
     System.out.println("您的账单:"+"\n"+"***可载人的车有:");
     for(int i=0;i<peopleCar.length;i++){
      if (peopleCar[i]!=null){
      System.out.print(peopleCar[i]+"    ");
      }
     }
     System.out.println("共载人:"+people+"人");
     System.out.println("***载货的车有:");
     for(int i=0;i<goodsCar.length;i++){
      if (goodsCar[i]!=null){
      System.out.print(goodsCar[i]+"    ");
      }
     }
     System.out.println("共载货:"+ton+"吨");
     System.out.println("***租车的总价格:"+price*days+"元");
     
    }
    //结束选车
    public static void exit(){
     System.out.println("欢迎下次光临滴滴租车系统,谢谢!");
    }
}


写回答 关注

1回答

  • 笨萌萌
    2016-08-04 18:10:25

    666

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

531106 学习 · 6299 问题

查看课程

相似问题