我现在设置我的数组我必须得到整个数组(Java)

时间:2014-12-31 05:09:42

标签: java arrays for-loop getter-setter

好的,所以我有一个程序,它设置一个带有值的数组,然后在程序执行时请求它们。

int[] foo = new int[10]; //init array 
//also added a getter and setter for this array 

setFoo(fooLocal); //setter being implemented 

现在在我的代码的另一部分我想使用for循环访问这些值,但似乎这不会真正起作用,因为你真的没有地方可以放置for的值环。

for (x = 0; x < getFoo().length; x++){
    //this is where i get a bit confused 
    getFoo(x); //im not really sure what to do here?
}

这个答案可能很简单,但我还没有遇到类似的事情。请帮助或参考将是非常感谢你:))

1 个答案:

答案 0 :(得分:3)

假设getFoo()返回一个数组foo(这似乎是你的for循环语句的情况),你可以访问x的索引foo

int a = getFoo()[x];

从那里,您可以像使用任何其他int一样使用a

这虽然效率稍低,尤其是getFoo()必须进行任何类型的计算。稍微更有效的方法是在开始for循环之前获取对foo的引用:

int[] foo = getFoo();
for(int x = 0; x < foo.length; x++){
    int a = foo[x];
    //do stuff with a
}

更简洁地说,你可以使用for-each循环来简单地依次得到foo的每个元素而不用担心索引。但是,如果确实需要索引值,这种方法就不那么诱人了。

for(int a : getFoo()){
    //do stuff with a
}