2016-08-31 8 views
0

私のような何かを記録する必要があるスキャナを介してユーザの入力を取っている「ガロン2%のミルクを。」 は、今私がスキャナーはスペースと数字の文字列を記録しますか?

System.out.print("Enter product description: "); 
    String description = in.next(); 

を持っている今、これは「ミルク」のようなもののために正常に動作しますが、私は「ガロン2%のミルク」と入力すると、それはエラーを返します。

も、私は

String description = in.nextLine(); 

を使用してみましたが、それは印刷し、「製品の説明を入力します。製品の数量を入力してください。」

を私は自分のコードの次の行があるので、それがあると仮定しています

助けを事前に
System.out.print("Enter product quantity: "); 

感謝!

+0

'System.out.print("製品の説明を入力してください: ");'これの前にEnterキーを押すと、そのキーストロークも 'nextLine'を使って消費する必要があります –

+0

商品説明を入力する前に、「商品数を入力:」が印刷されていますか? –

+0

はこれを好きにどのようにIDKのが、これは犯人でした!ありがとう@ScaryWombat – sparkles

答えて

0

場合はSystem.out.print("Enter product description: ");前にプロンプ​​トを持っていて、この前にENTERキーを押しています。

-1

あなたは、スペースやEnterキーを押しますを含む文字列を取り込むためのin.nextLine()を使用する必要があります。あなたがSystem.out.print(String)メソッドを使用しているので、あなたは、単一の行に両方の出力を得ている理由があります。出力ストリームに新しい行が追加されることはないので、それ以降の呼び出しは同じ行に追加されます。代わりにSystem.out.println(String)を使用してください。そのキーストロークも使用nextLine消費する必要があります

関連する問題