如何将类中创建的所有对象存储在Java中由该类返回的单个数组中?

时间:2016-01-27 16:37:45

标签: java arrays inner-classes

我正在使用Java创建一个名为Track的对象,它包含由类中的方法(浮点数,双精度数,整数等等)创建的一堆不同的数字对象。此类Track将由另一个类(另一个类的单个实例内的多个Track实例)多次实例化。我希望track成为这些数字对象的数组,以便父类包含多个Track数组。

Track类的结构与此类似,并嵌套在另一个类中,该类将根据需要多次实例化Track。

class Track
{
    public int trackID()
    {
    }

    public short trackValidity()
   {
   }

  ....//other objects
} 

2 个答案:

答案 0 :(得分:2)

就像你通常声明数组一样,例如:

public class Course {
    public List<string> Dates { get; set; }
}

或者作为完整的工作示例:

Track[] track = new Track[42];
track[0] = new Track();

答案 1 :(得分:2)

IMO,你可以创建一个函数来构建一个带有数字对象的objets数组:

public ArrayList getNumbers(){
    ArrayList array = new ArrayList();
    array.add(trackID());
    array.add(trackValidity());
    ...
    return array;
}

请记住在从数组中获取对象时强制转换对象,例如在pos 0(trackID)是一个int,所以当你从arraylist中获取它时别忘了抛出它:

Track myTrack = new Track();
//set track variables ...
ArrayList trackInfo = myTrack.getNumbers();
int trackID = (int) trackInfo.get(0);