入力された値が 0or1以外 ならもう一度値を繰り返すという処理を作成しています。
入力はScannerクラスを使用しており、int型を変数に受け取るようにしています。
もし入力された値が数字以外ならエラーを出し、もう一度入力する箇所に戻るという仕様にしたいです。
コードはこのようにしているのですが、正しく動作しません。
例えばdを入力すると、「入力エラーです」が表示されてループはされません。
どのように改善せるべきでしょうか。
java
1int flg=0; 2Scanner scan=new Scanner(System.in); 3do { 4 System.out.println("現金の場合は1,ICの場合は0を入力してください"); 5 try { 6 flg = scan.nextInt(); 7 }catch(InputMismatchException e) { 8 System.out.println("入力エラーです"); 9 } 10 }while(flg>1||flg<0);
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/23 08:35
2020/05/23 08:39 編集
2020/05/23 08:49
2020/05/23 08:53
2020/05/23 08:56
2020/05/23 09:01
2020/05/23 09:27