为什么在方法中将{5,7,5,8,1}作为数组传递会在java中引发错误?

llew8vvj  于 2021-08-20  发布在  Java
关注(0)|答案(1)|浏览(164)

**已关闭。**此问题需要调试详细信息。它目前不接受答案。
**想要改进此问题?**更新问题,使其位于堆栈溢出主题上。

昨天关门了。
改进这个问题
提前谢谢。我很困惑。
我有一个名为reversearray的方法,将参数作为整数数组。若我以下面的方式调用,它在编译时不会显示任何错误

public static void main(String[] args) {
    int input[] = { 5,7,5,8,1};
    int result[] = reverseArray({ 4, 6, 8, 9, 3 });
}

但是,当我像下面那样通过时,我得到了一个错误。

public static void main(String[] args) {
    int result[] = reverseArray({ 5,7,5,8,1});
}

有人能帮我理解这一点吗?
谢谢

5kgi1eie

5kgi1eie1#

创建一个数组,因为方法reversearray希望将其作为参数。

public static void main(String[] args) {
  int input[] = { 5,7,5,8,1};
  //Passing an anonymous array
  int result[] = reverseArray(new int[]{ 4, 6, 8, 9, 3 });
}

如果你想像这样传递参数,你需要使用 reverseArray method 是公共静态的,因此其签名需要接受可变长度的参数。

public static int[] reverseArray(int... input){
//
}

相关问题