【发布时间】:2013-02-13 02:27:04
【问题描述】:
我将以下 3D 数组设置为两个程序状态之间的缓冲区。
private boolean state [][][] = new boolean [20][20][2];
我正在尝试从
复制所有内容state[0-19][0-19][1]
到
state[0-19][0-19][0]
目前我正在使用 for 循环,效果很好,但我不禁觉得有更好的方法。我知道我可以只使用两个单独的 2D 数组并做一个简单的复制,但我很想看看有没有办法解决这个问题。
当前循环:
for (int i=0;i<20;i++){
for (int j=0;j<20;j++){
state[i][j][0]=state[i][j][1];
}
}
【问题讨论】:
-
要知道它是否可以做得比你拥有的更好,我们实际上必须看看你拥有什么。
-
对我来说,for 循环很有意义。你会怎么称呼“更好”?更快?
-
@JoeriHendrickx 我想我正在寻找更高效的东西。我知道 System.arraycopy() 可以为单独的数组完成这项工作,但我无法让它在单个数组中工作
-
为什么要复制?你想要两组重复值吗?还是有其他原因?
标签: java arrays multidimensional-array