第一次写代码,但是在运行“newcar[j]=car[k-1];”这里时总是报错,找了好久也没有找到原因,希望各位大神帮忙指点(代码写的不好,希望能包含)
//汽车父类
public abstract class Car {
public int NO;//车序号
public String name;//汽车名称
public int zujin;//租金
public int zaike;//载客量
public int zaihuo;//载货量
}
//载客类
public class zaikeCar extends Car {
private int zahuo;//定义载货量为0
public zaikeCar(int NO1,String name1,int zujin1,int zaike1){
this.NO=NO1;
this.name=name1;
this.zujin=zujin1;
this.zaike=zaike1;
this.zahuo=0;
}
}
//载货类
public class zaihuoCar extends Car {
private int zake;//定义载客量为0
public zaihuoCar(int NO1,String name1,int zujin1,int zaihuo1 ){
this.NO=NO1;
this.name=name1;
this.zujin=zujin1;
this.zaihuo=zaihuo1;
this.zake=0;
}
}
//载客载货类
public class Pika extends Car {
public Pika(int NO1,String name1,int zujin1,int zaike1,int zaihuo1 ){
this.NO=NO1;
this.name=name1;
this.zujin=zujin1;
this.zaike=zaike1;
this.zaihuo=zaihuo1;
}
}
//实现类
import java.util.Scanner;
public class Use {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner info=new Scanner(System.in);
Car[] car={new zaikeCar(1,"奥迪A4",500,4),new zaikeCar(2,"马自达",400,4),new Pika(3,"皮卡雪",450,4,2),new zaikeCar(4,"金龙",800,20),new zaihuoCar(5,"松花江",400,4),new zaihuoCar(6,"依维柯",1000,20)};
System.out.println("欢迎使用答答租车系统");
System.out.println("您是否要租车:1是 0否");
int Iszuche=info.nextInt();
if(Iszuche==0){
System.out.println("谢谢您的使用,欢迎下次再次使用");
}else{
System.out.println("您可租车的类型及其价目表:");
System.out.println("序号"+"\t"+"汽车名称"+"\t"+" 租金"+"\t"+" 容量");
for(int i=0;i<car.length;i++){
System.out.println(car[i].NO+"\t"+car[i].name+"\t"+car[i].zujin+"元/每天\t"+"载人:"+car[1].zaike+"人"+"载货:"+car[i].zaihuo+"吨");
}
System.out.println("请输入您要租汽车的数量:");
int num=info.nextInt();//存储租车的数量
//多余了int[] carnum=new int[num-1];//存储租的车的序号
Car[] newcar=new Car[num-1];//存储乘客租的车的信息
int dateNo; //存储租车天数
int zaikeNum=0;//载人总数
int zaihuoNum=0;//载货总数
int prize=0;//总金额
for(int i=1,j=0;i<=num;i++,j++){
System.out.println("请输入第"+i+"辆车的序号:");
int k=info.nextInt();
///多余了 carnum[j]=info.nextInt();
newcar[j]=car[k-1];
}
System.out.println("请输入租车天数");
dateNo=info.nextInt();
System.out.println("您的账单:");
System.out.println("可载人的车有:");
for(int i=0;i<num;i++){
if(newcar[i].zaike!=0){
System.out.println(newcar[i].name);
zaikeNum+=newcar[i].zaike;
}
}
System.out.println("载人总数为:"+zaikeNum);
System.out.println("可载货的车有:");
for(int i=0;i<num;i++){
if(newcar[i].zaihuo!=0){
System.out.println(newcar[i].name);
zaihuoNum+=newcar[i].zaihuo;
}
}
System.out.println("载货总数为:"+zaihuoNum);
for(int i=0;i<num;i++){
prize+=newcar[i].zujin;
}
System.out.println("租金总金额为:"+prize);
}
}
}