[英]Populating a 2D array with char inputs from a text file
我想要这个文本
C BAB
BNOD
MDEE
并填充一个二维数组。 我可以用这段代码打印出数组,但它是空的,因为我不知道在我注释掉的行中放什么。 所以它只是打印出 [[, , , , ],[, , , , ],[, , , , ]] 因为我已经得到了数组的大小。
char[][] wordMatrix = new char[m][n];
while(scan.hasNext()) {
for(int i = 0; i < wordMatrix.length;i++) {
String[] line = scan.nextLine().trim().split(" ");
for (int j = 0; j <line.length;j++) {
//wordMatrix[i][j]= Char.parseChar(line[j]);
}//end j for loop
}//end i for loop
System.out.println(Arrays.deepToString(wordMatrix));
}//end while loop
当您向数组中添加某些内容时,请确保它是一个字符而不是字符串。 这是使用字符串数组的解决方案。 您可以将其调整为使用扫描仪。
String.charAt()
获取指定索引处的字符。 在这种情况下0
。\\s+
拆分一个或多个空白字符。String[] s = { "C B A B", "B N O D", "M D E E" };
int m = 3;
int n = 4;
char[][] wordMatrix = new char[m][n];
for (int i = 0; i < s.length; i++) {
String[] line = s[i].trim().split("\\s+");
for (int j = 0; j < line.length; j++) {
wordMatrix[i][j] = line[j].charAt(0);
} // end j for loop
} // end i for loop
System.out.println(Arrays.deepToString(wordMatrix));
印刷
[[C, B, A, B], [B, N, O, D], [M, D, E, E]]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.