调用数组方法时的语法是什么?

dbc*_*ion 1 java

调用需要String或int输入的方法没有问题.例如:

return stringMethod("Hello World");
return intMethod(1,2,3);
Run Code Online (Sandbox Code Playgroud)

但是在调用需要输入的int数组的方法时,我遇到了语法问题.我用来在下面的代码中调用方法countEvens的语法不起作用.

public class _01_countEvens{
    public static void main(String[] args){
        return countEvens({2,4,6,7});
        }

    }
    public int countEvens(int[] nums){
        int result = 0;

        for(int x = 0; x < nums.length; x++){
            if(nums[x] % 2 == 0) result++;
        }
        return result;
    }
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

Sot*_*lis 8

这个语法

{2,4,6,7}
Run Code Online (Sandbox Code Playgroud)

是数组创建语法,只能在数组创建表达式中使用

new int[]{2,4,6,7}
Run Code Online (Sandbox Code Playgroud)

这里阅读有关Arrays的官方Java教程.


Jos*_*h M 6

将方法标题更改为:

public int countEvents(int... nums)
Run Code Online (Sandbox Code Playgroud)

并取出{}在调用countEvents,

或者传递:new int[]{2, 4, 6, 7}作为一个论点.