Java 使用数组而不在变量中声明它

Java 使用数组而不在变量中声明它,java,arrays,Java,Arrays,如果您尝试执行15/2,它将返回7,因为它认为15和2是整数。如果执行(double)15/2操作,它将返回7.5,因为它知道15是一个双精度 假设您有一个名为test()的函数,它接受数组作为参数。如果不先定义数组,如何将数组传递到函数中 我试过这样做: test((int[]){1,2,3,4}) test(new int[]{1, 2, 3, 4}); 你很接近。您可以这样做: test((int[]){1,2,3,4}) test(new int[]{1, 2, 3, 4});

如果您尝试执行
15/2
,它将返回
7
,因为它认为
15
2
是整数。如果执行
(double)15/2
操作,它将返回
7.5
,因为它知道
15
是一个双精度

假设您有一个名为
test()
的函数,它接受数组作为参数。如果不先定义数组,如何将数组传递到函数中

我试过这样做:

test((int[]){1,2,3,4})
test(new int[]{1, 2, 3, 4});

你很接近。您可以这样做:

test((int[]){1,2,3,4})
test(new int[]{1, 2, 3, 4});

我想你在找一个(又名瓦拉格),类似的

public static double test(int... vals) {
    return IntStream.of(vals).sum() / (double) vals.length;
}
可以使用任意数量的
int
(s)调用。比如说,

System.out.println(test(1, 2, 3));
哪个输出

2.0