[解決済み] Java.Util.ScannerでNoSuchElementExceptionが発生する。
2022-03-06 13:31:13
質問
私はJavaの初心者ですが、Javaという本を読み進めています。How to program (9th ed.) を読んでいるのですが、ある例題にたどり着いたときに、何が問題なのかがどうしてもわかりません。
以下は、教科書に載っているソースコードの例を(少し)補強したものです。
import java.util.Scanner;
public class Addition {
public static void main(String[] args) {
// creates a scanner to obtain input from a command window
Scanner input = new Scanner(System.in);
int number1; // first number to add
int number2; // second number to add
int sum; // sum of 1 & 2
System.out.print("Enter First Integer: "); // prompt
number1 = input.nextInt(); // reads first number inputted by user
System.out.print("Enter Second Integer: "); // prompt 2
number2 = input.nextInt(); // reads second number from user
sum = number1 + number2; // addition takes place, then stores the total of the two numbers in sum
System.out.printf( "Sum is %d\n", sum ); // displays the sum on screen
} // end method main
} // end class Addition
NoSuchElementException'エラーが発生します。
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:838)
at java.util.Scanner.next(Scanner.java:1461)
at java.util.Scanner.nextInt(Scanner.java:2091)
at java.util.Scanner.nextInt(Scanner.java:2050)
at Addition.main(Addition.java:16)
Enter First Integer:
これはおそらく、ソースコードに何か互換性のないものがあるためだと理解しています。
Scanner
クラスから
java.util
しかし、何が問題なのかを推し量るという点では、これ以上は本当に無理なのです。
解決方法は?
NoSuchElementException
で投げる。
nextElement
メソッドを使用して、列挙された要素がもうないことを示します。
http://docs.oracle.com/javase/7/docs/api/java/util/NoSuchElementException.html
これはどうでしょう.
if(input.hasNextInt() )
number1 = input.nextInt(); // if there is another number
else
number1 = 0; // nothing added in the input
関連
-
[解決済み] Jdbctemplate の文字列に対するクエリです。EmptyResultDataAccessException: 不正な結果サイズ:期待値1、実際0
-
[解決済み] Java - JTextFieldが空かどうかを確認する
-
[解決済み] Oracle DB : java.sql.SQLException: 閉じた接続
-
[解決済み] プロトコルハンドラの初期化に失敗しました。
-
[解決済み] javac ソースファイルが見つかりません
-
[解決済み] JDBC タイプの方言マッピングがありません。1111
-
[解決済み] java.sql.SQLRecoverableException: IO エラーです。NL Exceptionが発生しました
-
[解決済み] Spring ApplicationContext - リソースリーク: 'context' が閉じられない
-
[解決済み] Javaコンパイラーエラー:ステートメントではありません
-
[解決済み] java swingアプリケーションでJCEがプロバイダBCを認証できない
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] JavaでFileFilterを作るには?
-
[解決済み] Java の substring() の時間複雑性
-
[解決済み] 一部の入力ファイルが非推奨のAPIを使用またはオーバーライドしている
-
[解決済み] Javaでのスキャナが動作しない
-
[解決済み] 親から継承したメソッドの可視性を下げることができない [重複]。
-
[解決済み] 文字列が一意な文字であるかどうかを判定する
-
[解決済み] publicId と systemId の間に空白が必要です。
-
[解決済み] タイプの安全性。アンチェック・キャスト
-
[解決済み] javaでメソッドを呼び出すプログラムのエラー修正
-
[解決済み] Javaでdoubleをfloatに変換する