如何传递数组而不将其设置为单独的变量?例如,我知道这可行:

class Test{
    public static void main(String[] args){
        String[] arbitraryStrings={"foo"};
        takesStringArray(arbitraryStrings);
    }
    public static void takesStringArray(String[] argument){
        System.out.println(argument);
    }
}

但是我不想使数组成为变量,因为它仅在这里使用。有什么办法可以做这样的事情:
class Test{
    public static void main(String[] args){
        takesStringArray({"foo"});
    }
    public static void takesStringArray(String[] argument){
        System.out.println(argument);
    }
}

最佳答案

{"foo"}不会告诉Java您要创建哪种类型的数组...
相反,请尝试类似...

takesStringArray(new String[] {"foo"});

10-07 21:03