【发布时间】:2017-03-12 16:37:49
【问题描述】:
我想像这样通过引用连接Java中的数组。
int[] a = new int[] {1,2,3};
int[] b = new int[] {4,5,6};
int[] ab = concatArrayByReference(a,b); //Function to be defined
现在如果我这样做了
a[2] = 90;
ab 应该等于 {1,2,90,4,5,6}
这在 Java 中是否可行,如何通过引用拆分数组?
我想要这个主要是出于性能原因,我想避免每次连接两个非常大的数组时都复制它们。
编辑:这似乎在 Java 中是不可能的,那么我将如何进行 List 的高性能实现以使其成为可能?
【问题讨论】:
-
你认为“通过引用”是什么意思?
-
a[0] 应该与 ab[0] 引用相同的内存位置
-
不,你不能用数组来做这件事。您只能通过
List的特殊实现来做到这一点。 -
@Julian 这并不是这里要问的。关键是更新底层数组应该更新串联数组。
标签: java arrays performance reference