readInput メソッドと writeOutput メソッドを実行するこのプログラムのメイン メソッドは、別の Java ファイルにあります。私の質問は次のとおりです。
文字列を入力する前に、Java が 31 行目と 32 行目で範囲外の例外を出すのはなぜですか? 次の「if、else if、else」ステートメントで使用するために、文字列の最初の文字を char として保存しようとしています。
何が問題なのかについてのヒントはありますか? これを入力しているときにうっかり書き忘れてしまったのは、単純なことだと断言できます。
リンクが機能しない人のために、コードは次のとおりです。
System.out.println("Is the nature increase, decrease, or neutral?");
char nature;
nature = keys.nextLine().toLowerCase().charAt(0);
if(nature=='i')
natureMult=1.1;
else if(nature=='n')
natureMult=1.0;
else if(nature=='d')
natureMult=0.9;
else
{
System.out.println("Error! You entered an invalid multiplier!");
System.exit(0);
}