私はキャンバスにマークをつけてペンを動かすプログラムを作っています。現時点では、文字列を整数に変換するクラス "MyInput"(私のメソッドでは "reader"と呼ばれていたクラス)のconvertToIntegerというメソッドがあります。整数をチェックして、ターミナルでエラーメッセージを作成する - プログラムをクラッシュさせないでください
public int convertToInteger(String word)
{
return Integer.parseInt(word);
}
これを私の方法に結びつけ、文字列入力を整数に変換しました。
case "move":
int distance = reader.convertToInteger(command.get(1));
brush.move(distance);
break;
私のプログラムでは、「移動100」と入力してブラシを100ピクセル移動できます。非整数を入力しようとすると、現在の状態のコードが例外エラーでクラッシュします。例えば"ここに移動"。
public boolean isAnInteger(String word)
{
boolean ok;
try {
Integer.parseInt(word);
ok = true;
}
catch(NumberFormatException ex) {
// Non-integer string.
ok = false;
}
return ok;
}
はその後、私のコードでそれを実装してみました:
は「MyInput」クラスでは、私はそれはしてみてください」と「キャッチ」を使用して、整数やないかどうかを確認し、ブールメソッドを作成しました
case "move":
int distance = reader.convertToInteger(command.get(1));
if (reader.isAnInteger(command.get(1)) == true){
brush.move(distance);
}
else {
printError();
}
break;
私は、コードを実行し、端末で "ここに移動"のようなものを入力すると、私のコードを迂回するように例外がスローされますが、 "move 100"またはその他の有効な整数が入力されます。
提案がありますか?前もって感謝します。
ハ...そうしました。校長エラー。答えをありがとう。アップフォワードされ、答えられました。 – Garwaire