入力してもらいそのデータを扱うコンソールアプリを作成しております。そのデータ入力の際に、
intで価格と仮かどうかを入力してもらいます。
教えてほしいこと
・trycatchでもし文字列が入力された場合をcatchにしているのですが、その際に再度入力してもらうようにしたいです。(tryの処理に戻る)どう記述すればよいのでしょうか?
入力→文字列打ち込まれた場合→再入力
入力→数字→次の質問に進む
という形です。
・またこの下記コードで実行すると、コンソールで仮の場合は1を仮じゃない場合は2を入力してください。と聞いたあとすぐに(こちらがうちこむことなく)catchに入り、文字列が入力されませんでしたが出てきてしまいます。これは何が原因でしょうか?(コード下のコンソール表示参照)
初心者の為、説明不足な点があると思いますが何卒お願いいたします。
****現在書いているコード** int money; try{System.out.println("価格を入力してください"); money = touroku.nextInt(); }catch(InputMismatchException e) { System.out.println("文字列が入力されました。"); money =0; } int kari; try{System.out.println("仮の場合は1を仮じゃない場合は2を入力してください。"); kari = touroku.nextInt(); }catch(InputMismatchException e) { System.out.println("文字列が入力されました。"); kari=0; }
**コンソール画面** 価格を入力してください d 文字列が入力されました。 仮の場合は1を仮じゃない場合は2を入力してください。 文字列が入力されました。 名前:s値段:0仮登録:0で登録完了しました。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/05 07:44