Я пытаюсь передать текстовый файл, в котором говорится: «Это был яркий холодный день в апреле, и часы били тринадцать», - в двумерный массив. Он должен заполнять все неиспользуемые пробелы в двумерном массиве символом *. Но когда я запускаю эту программу, я получаю сообщение об ошибке «Исключение в потоке» main »java.lang.ArrayIndexOutOfBoundsException: 6 at TwoDArray.main (TwoDArray.java:24)« Как исправить эту ошибку?
import java.io.FileNotFoundException;
import java.util.*;
public class TwoDArray {
public static void main(String[] args) throws FileNotFoundException {
java.io.File file = new java.io.File("2DArray.txt");
Scanner input = new Scanner(file);
int totalRow = 6;
int totalColumn = 7;
char[][] chars = new char[totalRow][totalColumn];
while (input.hasNext()) {
String word = input.next();
char[] words = word.toCharArray();
int i = 0;
for (int r = 0; r < words.length; r++) {
for (int c = 0; c < totalColumn; c++) {
if (i < words.length) {
chars[r][c] = words[i] == ' ' ? '+' : words[i];
i++;
}
else {chars[r][c] = '*';
}
}
}
for (char[] x : chars) {
System.out.println(Arrays.toString(x));
}
}
}
}
Ошибка:
"Исключение в потоке" main "java.lang.ArrayIndexOutOfBoundsException: 6 at TwoDArray.main (TwoDArray.java:24)"