我有一些类库,正在处理我的数据,这些数据正在读入缓冲区。是否有可能以某种方式避免一次又一次地复制数组,将部分数据越来越深地传递到处理方法中?好吧,这听起来很奇怪,但在我的特殊情况下,有一个特殊的写入器,它将数据分成 block 并将它们单独写入不同的位置,所以它只是执行 System.arraycopy,获取它需要的内容并调用底层写入器,使用那个新的子数组。这种情况发生了很多次。重构此类代码的最佳方法是什么?
最佳答案
Arrays.asList(array).subList(x, y).
这个方法没有给你一个数组,而是一个List
,它更加灵活。
关于java - 如何在不复制数据的情况下在 Java 中获取数组的子数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3395547/