try
{
n = s.nextLine();
a = s.nextInt();
}
catch(Exception e)
{
System.out.println("do u really want to come out? Write True or False");
boolean c = s.nextBoolean();
}
このコードをデバッグすると、正確に何をしたいのですか?しかし、私はそれを実行するときdoes notはs.nextboolean(これはスキャナ(java.util.Scanner)のオブジェクトです。私は入力を取得するために使用しています)。例外が発生したときにそれが印刷されると本当に出て欲しいですか? TrueまたはFalseを書き込みますが、例外を出力してコードをクラッシュします。それは私に真偽を入力させません、それはちょうどクラッシュit.tコードでは、intを要求し、あなたが出てくるはずなので、それは不一致の例外を与える文字列を与える。tryとcatchを使用すると、コードがまだクラッシュします。
あなたが無効な入力を得ると、あなたはそれを消費していません。 'nextLine()'なので 'nextBoolean()'を試しても無効な入力を読み込もうとしています。 –
@PeterLawreyそれも私が考えていたものです。 @artechhelpので、 'nextBoolean()'の前に 'nextLine()'を追加してください。ありがとう。 – Logan
私はnextlineが文字列を入力したいと思ったらそれを作ったと思った? – artechhelp