2016-07-01 13 views
-1
private static long getLongInput() { 
    while (!scanner.hasNextLong()) { 
     System.err.println("please enter a number, no text allowed"); 
     scanner.next(); 
    } 
    return scanner.nextLong(); 
} 

このコードはユーザーがテキストを入力できないようにしますが、入力せずにEnterキーを押すとスキャナは空白行をコンソールに追加し続けます。大したことはありませんが、空白を入力することはできないと言いたいと思います。JavaスキャナーnextLongの改行/空白のチェック

+0

あなたは欠けていますscanner.nextLin() – Jens

+0

私に教えてください:next()またはnextLine()はこの文脈で同じことをします。 –

+0

nextLineもEOL char – Jens

答えて

0
private static long getLongInput() { 
    while (!scanner.hasNextLong()) { 
     System.err.println("please enter a number, no text allowed"); 
     scanner.next(); 
    } 
    return scanner.nextLong(); 
} 

private static long inputAccountNumber() { 
    long accountNumber = getLongInput(); 
    while (!Account.checkAccountNumber(accountNumber)) { 
     System.err.println(accountNumber + " is not correct format!"); 
     accountNumber= getLongInput(); 
    } 
    return accountNumber; 
} 

これは、私に正しい口座番号を与える必要がある完全なコード束です。

関連する問題