私は同じようなスレッドをいくつか読んだことがありますが、私のコードに答えを適用する方法はわかりません。申し訳ありません...java.lang.StringIndexOutOfBoundsException:文字列インデックスが範囲外です:(再)
I以下のコードを実行し、エラーを取得しています: java.lang.StringIndexOutOfBoundsException:範囲外の文字列インデックス:
プログラムの成果は大丈夫です。私はスキャナで入力した文字列からすべての大文字を得ています。しかし、エラーメッセージはちょっとしたことです。
ご協力いただきありがとうございます。前もって感謝します!
import java.util.Scanner;
public class TestClass {
public static void main(String[] args) {
Scanner in3 = new Scanner(System.in);
System.out.print("Enter a senctence with capitals: ");
String inputString = in3.nextLine();
int stringLength = String.valueOf(inputString).length();
int i = 0;
while (i <= stringLength)
{
int subsStart = i;
int subsEind = i + 1;
String stringToCheck = inputString.substring(subsStart, subsEind);
char letterToCheck = stringToCheck.charAt(0);
if (Character.isUpperCase(letterToCheck))
{
System.out.println(letterToCheck);
}
i++;
}
in3.close();
}
}
i == stringLengthの場合はどうなりますか?部分文字列はどのように機能しますか? –
'i == stringLength - 1'ならどうなりますか? – Guy
そして、なぜあなたは 'String.valueOf'に何か文字列である必要がありますか? –