简单的二维数组操作
Simple 2D Array Manipulation
我有一个程序可以将一些数字加载到数组中
(例如 int[][] array1 = {{1,2,3},{3,2,1},{2,3,1}};
)
稍后在程序中(初始化后),我想更改这些值。我知道这样做的唯一方法是这样的:
array1[0][0] = 3; array1[1][0] = 2; array1[2][0] = 1;
array1[0][0] = 2; array1[1][0] = 3; array1[2][0] = 1;
array1[0][0] = 1; array1[1][0] = 2; array1[2][0] = 3;
这非常庞大,使代码更难看。我想知道您是否可以在初始化后更改数组的值,如下所示:
int[][] array1 = {{1,2,3},{3,2,1},{2,3,1}};
void main {
array1 = {{3,2,1},{2,3,1},{1,2,3}};
}
如果有帮助,我正在使用 Processing。
回答你的问题:不,你不能像那样重新初始化一个数组。您只能在变量初始化期间使用硬编码数组。
话虽这么说,你可以做类似这样的事情:
int[][] array1 = {{1,2,3},{3,2,1},{2,3,1}};
void setup() {
int[][] array2 = {{3,2,1},{2,3,1},{1,2,3}};
array1 = array2;
}
您还可以使用 for 循环来设置数组中的值。
我有一个程序可以将一些数字加载到数组中
(例如 int[][] array1 = {{1,2,3},{3,2,1},{2,3,1}};
)
稍后在程序中(初始化后),我想更改这些值。我知道这样做的唯一方法是这样的:
array1[0][0] = 3; array1[1][0] = 2; array1[2][0] = 1;
array1[0][0] = 2; array1[1][0] = 3; array1[2][0] = 1;
array1[0][0] = 1; array1[1][0] = 2; array1[2][0] = 3;
这非常庞大,使代码更难看。我想知道您是否可以在初始化后更改数组的值,如下所示:
int[][] array1 = {{1,2,3},{3,2,1},{2,3,1}};
void main {
array1 = {{3,2,1},{2,3,1},{1,2,3}};
}
如果有帮助,我正在使用 Processing。
回答你的问题:不,你不能像那样重新初始化一个数组。您只能在变量初始化期间使用硬编码数组。
话虽这么说,你可以做类似这样的事情:
int[][] array1 = {{1,2,3},{3,2,1},{2,3,1}};
void setup() {
int[][] array2 = {{3,2,1},{2,3,1},{1,2,3}};
array1 = array2;
}
您还可以使用 for 循环来设置数组中的值。