【发布时间】:2020-04-04 07:15:09
【问题描述】:
我正在尝试制作一个包含多个 char 数组的 char 数组。下面是方法,当我运行它时,我收到一条错误消息“char[] 无法转换为 char”:
private MazeStatus[][] stringToMaze(String sMaze) {
String[] splitString = sMaze.split("\n");
char[][] array = new char[1][];
for (int x = 0; x < splitString.length; x++) {
array[1][x] = splitString[x].toCharArray();
}
return null; // TO DO
}
我怎样才能让它保持与字符相对的字符数组?
我已经在堆栈溢出中搜索了类似的问题,并找到了一个以 same title 为我的问题。答案之一是:
String[][] arrays = { array1, array2, array3, array4, array5 };
我理解上述方法,但是我不能这样做,因为我首先必须遍历字符串数组,将数组中的每个字符串转换为 char 数组,然后我只能将它添加到包含的数组中数组(如上面的答案所说,如果不使用数组初始化它,我不知道该怎么做)
【问题讨论】:
-
你可以在创建数组的同时初始化它,
char[][] array = new char[1]{'1','2'} ; or char[] [] array = new char[1] [2] ; -
并更改 splitString。 toCharArray() [x]
-
如果你想要每行一行,每个单词有多个字符数组,你需要一个三维数组。但是,此时我建议使用 ArrayList,因为在声明变量时您似乎不知道每个项目需要多少个。
-
感谢你们两个的帮助!完全忘记了 ArrayList 集合,它非常适合我的需求,所以谢谢@NomadMaker