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

答答出租程序,基本都出来了,还有一个问题,求大神解决

标签:
Java

主函数:

package daDaZuChe;
import java.util.*;
public class DaDa {
public static void main(String[] args) {
Car[] aa = new Car[]{new KeChe("奥迪A4", 500, 4),new KeChe("马自达", 400, 4),new KeChe("金龙", 800, 20), new PiKa("皮卡雪", 450, 4, 2),new HuoChe("松花江", 400, 4),new HuoChe("依维柯", 1000, 20)};
// String[] names1 = new String[10];
// String[] names2 = new String[10];
String names1 = " ";
String names2 = " ";
int prices = 0;
int Mans = 0;
double Goods = 0;
System.out.println("欢迎使用答答租车系统:");
System.out.println("您是否要租车:1是 0否");
Scanner input = new Scanner(System.in);
int result1 = input.nextInt();
if(result1==0){
System.out.println("结束");
}else{
System.out.println("您可租车的类型及其价目表:");
System.out.println("序号\t"+"汽车名称\t"+"租金\t"+"容量");
for(int i=0; i<aa.length; i++){
if(aa[i] instanceof KeChe){
System.out.println(i+1+".\t"+aa[i].getName()+"\t"+aa[i].getPrice()+"/元\t载人:"+((KeChe) aa[i]).getCargoMan()+"人");
}else if(aa[i] instanceof HuoChe){
System.out.println(i+1+".\t"+aa[i].getName()+"\t"+aa[i].getPrice()+"/元\t载物:"+((HuoChe) aa[i]).getCargoGoods()+"吨");
}else{
System.out.println(i+1+".\t"+aa[i].getName()+"\t"+aa[i].getPrice()+"/元\t载人"+((PiKa) aa[i]).getCargoMan()+"人 载物:"+((PiKa) aa[i]).getCargoGoods()+"吨");
}

    }
    System.out.println("请输入您要租汽车的数量:");
    Scanner input2 = new Scanner(System.in);
    int result2 = input2.nextInt();
    for(int i=1; i<=result2; i++){
        System.out.println("请输入第"+i+"辆车的序号:");
        Scanner input3 = new Scanner(System.in);
        int result3 = input3.nextInt();
        if(result3<7){
            if(aa[result3-1] instanceof KeChe){

// names1[i-1] = aa[result3-1].name;
names1 = aa[result3-1].name +"\t"+names1;
prices += aa[result3-1].price;
Mans += ((KeChe) aa[result3-1]).getCargoMan();
}else if(aa[result3-1] instanceof HuoChe){
// names2[i-1] = aa[result3-1].name;
names2 = aa[result3-1].name +"\t" +names2;
prices += aa[result3-1].price;
Goods += ((HuoChe) aa[result3-1]).getCargoGoods();
}else{
// names1[i-1] = aa[result3-1].name;
// names2[i-1] = aa[result3-1].name;
names1 = aa[result3-1].name +"\t"+names1;
names2 = aa[result3-1].name +"\t" +names2;
prices += aa[result3-1].price;
Mans += ((PiKa) aa[result3-1]).getCargoMan();
Goods += ((PiKa) aa[result3-1]).getCargoGoods();
}
}else{
System.out.println("该车型不存在,请重新输!");
i--;
}
}
System.out.println("请输入租车天数:");
Scanner input4 = new Scanner(System.in);
int result4 = input4.nextInt();
prices = prices*result4;
System.out.println("您的账单:");
// System.out.println("可载人的车有:"+Arrays.toString(names1)+" 共载人"+Mans+"人");
// System.out.println("可载货的车有:"+Arrays.toString(names2)+" 共载货"+Goods+"吨");
System.out.println("可载人的车有:"+names1+" 共载人"+Mans+"人");
System.out.println("可载货的车有:"+names2+" 共载货"+Goods+"吨");
System.out.println("租车的总价格为: "+prices+"元");
}

}

}

Car类:
package daDaZuChe;

public class Car {
public String name;
public int price;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}

}

还有KeChe HuoCHe PiKa 三个类 及ZaiKe Zaihuo 两个接口
写两个其他类比:
ZaiHuo接口:
public interface ZaiHuo {
double getCargoGoods();
public void setCargoGoods(double cargoGoods);
}
PiKa类:
public class PiKa extends Car implements ZaiKe, ZaiHuo {

private int cargoMan;
private double cargoGoods;

public PiKa(String name, int price, int cargoMan, double cargoGoods){
    this.name = name;
    this.price = price;     
    this.cargoMan = cargoMan;
    this.cargoGoods = cargoGoods;
}

@Override
public int getCargoMan() {
    return cargoMan;
}

@Override
public void setCargoMan(int cargoMan) {
    this.cargoMan = cargoMan;       
}

@Override
public double getCargoGoods() {
    // TODO Auto-generated method stub
    return cargoGoods;
}

@Override
public void setCargoGoods(double cargoGoods) {
    this.cargoGoods=cargoGoods;

}   

}

运行结果:
不知道传的图能不能看到,发个文字:

欢迎使用答答租车系统:
您是否要租车:1是 0否
1
您可租车的类型及其价目表:
序号 汽车名称 租金 容量

  1. 奥迪A4 500/元 载人:4人
  2. 马自达 400/元 载人:4人
  3. 金龙 800/元 载人:20人
  4. 皮卡雪 450/元 载人4人 载物:2.0吨
  5. 松花江 400/元 载物:4.0吨
  6. 依维柯 1000/元 载物:20.0吨
    请输入您要租汽车的数量:
    4
    请输入第1辆车的序号:
    4
    请输入第2辆车的序号:
    2
    请输入第3辆车的序号:
    4
    请输入第4辆车的序号:
    1
    请输入租车天数:
    2
    您的账单:
    可载人的车有:奥迪A4 皮卡雪 马自达 皮卡雪 共载人16人
    可载货的车有:皮卡雪 皮卡雪 共载货4.0吨
    租车的总价格为: 3600元

这里可以看到 因为是用字符串拼接的,所以有重复的 ,要怎么删去重复的车名啊 还有就是我用数组写不出来 传出的结果 不仅有重复的 有的还会为null 不造为啥

点击查看更多内容
TA 点赞

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

评论

作者其他优质文章

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

100积分直接送

付费专栏免费学

大额优惠券免费领

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

举报

0/150
提交
取消