将项添加到对象数组

时间:2016-10-29 01:15:13

标签: java arrays

如何使用我的add方法和名为queueLane1的新对象,使用下面的代码从main方法添加项目:

public class TrafficQueue {
    private Car [] carArray;
    private int numberOfcarsInQueue;


    public TrafficQueue(int numberOfcarsInQueue){
    carArray = new Car[numberOfcarsInQueue];


    }
    private class Car {} ; // define an empty Car class


    public void add(Car car){
    carArray[numberOfcarsInQueue] = car;
    numberOfcarsInQueue ++;

    }

    public static void main(String[] args) {
            // TODO code application logic here


             TrafficQueue queueLane1 = new TrafficQueue(10);
到目前为止,我能想到的唯一解决方案是queuelane1.add(“Toyota”)但是这会在向预期的汽车对象添加字符串时返回错误。

如何在我的添加方法中添加新车如新车?

2 个答案:

答案 0 :(得分:2)

也许是这样的,

public class TrafficQueue {
    private Car [] carArray;
    private int numberOfcarsInQueue;

    public TrafficQueue(int numberOfcarsInQueue){
    carArray = new Car[numberOfcarsInQueue];

    }

    static class Car 
    {
        public String name;

        public Car(String name) {
            this.name = name;
        }
    }

    public void add(Car car){
    carArray[numberOfcarsInQueue] = car;
    numberOfcarsInQueue ++;

    }

    public static void main(String[] args) {

             TrafficQueue queueLane1 = new TrafficQueue(10);
             Car toyota = new Car("Toyota");
             queueLane1.add(toyota);
    }
}

答案 1 :(得分:-1)

@Xvid,首先,add(Car car)需要一个Car对象。因此,您需要为Car类提供构造函数,并在参数中传递名称并将其保存在类的某个属性中:

public Car(String name){
    this.name = name;
}

然后,让你的Car类静态,如private static class Car{,然后你可以调用方法queueLane1.add(new Car(“Toyota”));