如何返回数组的特定元素?

我想返回奇数个数组,但Eclipse似乎不接受我的返回array[i]; 码。 我认为它需要返回一个完整的数组,因为我将一个数组设置为我的方法的参数。 正如我之前所说,我需要传递一个数组并获得该数组的特定元素作为回报。 即使我将该数组设为静态,如何返回单个元素?

编辑:好的,这里是:

 public class newClass{ public static void main(String[] args) { int [] newArray= new int [4]; int [] array = {4,5,6,7}; newArray[0] = array[0]+array[1]+array[2]+array[3]; newArray[1] = array[0]*array[1]*array[2]*array[3]; newArray[2] = findOut(array); } public static int findOut (int [] array3) { int e1=0; int e2=0; for (int i=0; i<array3.length; i++) { if (array3[i]%2==0) { e1+=array3[i]; array3[i]=e1 return array3[i]; } else { e2+=array3[i]; array3[i]=e2; return array3[i]; } } } } 

我知道这里可能有不止一些错误,但我正在研究它,我不仅会返回奇数,我还会将它们加在一起。

您的代码应如下所示:

 public int getElement(int[] arrayOfInts, int index) { return arrayOfInts[index]; } 

这里的要点是方法返回类型,它应该与数组元素类型匹配,如果你使用main() – 这个方法也必须是静态的。

我想返回奇数个数组

如果我读得正确,你想要这样的东西?

 List getOddNumbers(int[] integers) { List oddNumbers = new ArrayList(); for (int i : integers) if (i % 2 != 0) oddNumbers.add(i); return oddNumbers; } 

确保您方法的返回类型与您想要返回的相同。 例如:`

  public int get(int[] r) { return r[0]; } 

`

注意:返回类型是int,而不是int [],因此它能够返回int。

一般来说,原型可以

 public Type get(Type[] array, int index) { return array[index]; } 

(已编辑。)有两个原因导致它无法编译:您在本声明的末尾缺少一个分号:

 array3[i]=e1 

如果数组长度为0,findOut方法也不返回任何值。添加return 0; 在方法的最后将使它编译。 我不知道是否会让它做你想做的事,因为我不知道你想要它做什么。