gpt4 book ai didi

具有二维数组的 Java 可变参数

转载 作者:搜寻专家 更新时间:2023-11-01 01:36:21 24 4
gpt4 key购买 nike

问题留在这里是因为有人回答了它,我的问题是我使用的 API 版本与我的文档不同步....你实际上可以这样做。

有什么方法可以在 Java 中使用二维数组作为需要数组可变参数的参数的参数?

我要调用的函数是

public Long sadd(final byte[] key, final byte[]... members) {

我有一个二维字节数组(byte [][] data=blah)

但是如果我尝试调用

sadd(key,data);

我收到以下编译器错误:

(实参byte[][]不能通过方法调用转换成byte[])

有什么方法可以将二维数组用作数组类型的可变参数吗?

最佳答案

以下对我有用。也许您没有按照自己的想法去做?

@Test
public void test_varargs() {
byte[] x = new byte[] { 1, 2, 3};
byte[] y = new byte[] { 0, 1, 2};
assertEquals(9L, sum(x,y));
byte[][] z = new byte[][] { x,y };
assertEquals(9L, sum(z));
}

public long sum(final byte[]... members) {
long sum = 0;
for (byte[] member : members) {
for (byte x : member) {
sum += x;
}
}
return sum;
}

关于具有二维数组的 Java 可变参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12175651/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com