从java中的类内部访问数组

时间:2011-11-15 10:31:25

标签: java

假设有一个类的8个实例和类外的8个数组。类似的东西:

float[] t1,t2,t3,t4,t5,t6,t7,t8;


public void myclass{

我们如何从类中访问数组字段? 这样类的第一个实例对应于第一个数组“t1” 第二个是“t2”等。

}

for (int i = 0; i < 8; i++) {
        classID[i] = new myclass(i);
    }

5 个答案:

答案 0 :(得分:1)

在Java中,如果它在类的外面它应该在其他类中,所以你需要该类的对象来访问该数组

class Foo{
  private int arr[];
  public int[] getArr(){
    return this.arr;
  }
}
//from other class now

new Foo().getArr();

或者它需要是静态的

class Foo{
  public static int arr[];
}

//from other class
int arr[] = Foo.arr;

答案 1 :(得分:1)

每个类的实例都应该包含一个数组。数组可以在构造函数中传递,如下所示:

class MyClass {
    private float[] t;

    public MyClass(float[] aT) {
        t = aT;
    }
}

然后,在创建实例时,将适当的数组传递给构造函数调用:

MyClass myClass1 = new MyClass(t1);
MyClass myClass2 = new MyClass(t2);
...

答案 2 :(得分:0)

你的意思是?

MyClass[] arrays = new MyClass[8];
for(int i=0;i<arrays.length;i++) arrays[i] = new MyClass();


class MyClass {
    final double[] values = new double[10];

}

答案 3 :(得分:0)

您需要声明一个像

这样的float数组的ArrayList
ArrayList<float[]> arrayList = new ArrayList<float[]>;

然后将每个数组添加到arrayList。每个类都将访问arrayList.get(i)。

答案 4 :(得分:0)

java中没有“课外”所以 我得到了什么...你有一个班级,其中有8个Float类型阵列你做了8个不同的班级实例..
并且通过每个对象,您想要访问不同的对象,因为“对象序列取决于它们被实例化的顺序” 因此: -
U可以将int计数器设为static,并且每次在类u的构造函数中递增计数器并存储该值。并访问计数器的尊重值数组。