単語を個々の文字に分離するはずのwhileループがあります...動作しますが、存在しない部分文字列がnullかどうかを確認しようとすると、例外がスローされます...
private static void seperateWord(String word) {
boolean running = true;
int count = 0;
while (running) {
if (word.substring(count, count + 1).equals("null")) {
running = false;
return;
} else {
letter[count] = word.substring(count, count + 1);
System.out.println(letter[count]);
count++;
}
}
}
文字列の最後に到達し、読み取るものがなくなるまで、すべての文字を正しく出力します...存在しないだけです。この例外がスローされます...
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 4
at java.lang.String.substring(Unknown Source)
at Class.seperateWord(Class.java:33)
at Class.main(Class.java:13)
行 33 は :: if (input.substring(count, count + 1).equals("null")) {
13 行目は、メソッドを呼び出す場所です。
入力したテキストは「abc」です
助けてくれてありがとう!