如果我在编译时知道数组的格式,我已经知道如何在 Java 中创建不同长度的数组。
前任:
char[][] array = { { 'a', 'b', 'c'}, {'d'}, {'e', 'f'}}; //etc....
问题是我需要在运行时制作。我不知道编译时数组需要的大小,但我会在运行时知道。
这里的目标是在 java 中制作(并具有 java 中数组的优点(如 .length))以制作 C 中的内容:
char[][] arrayC = malloc(outerArraySize);
for(int i = 0; i < outerArraySize; i++){
arrayC[i] = malloc(innerArraySize[i]);
}
此 C 代码是在此处临时制作的,因此它可能包含错误,但其目的只是为了澄清问题信息。
无论如何在Java中正确地做到这一点?