2017-03-16 19 views
0

私は練習している小さな個人の銀行口座プロジェクトで何かを達成しようとしています。ユーザーがスペースを入力した場合や、何も入力しない場合(つまり、値を入力せずにEnterキーを押すと)、アカウントのデフォルト名が「Default」に切り替わるようにしたいと考えています。スキャナ入力の空白値を受け入れる方法

ので、同様

:おそらく愚かな質問

Scanner read = new Scanner(System.in); 
System.out.print("Enter your account's name: "); 
String input = read.next(); 
String name = ""; 

if (input == "" || input == null) { 
    name = "Default"; 
} else { 
    name = input; 
} 

が、これは私が少し問題を抱えているものです。スペースを入力してEnterキーを押すと、名前の設定が続行されません。入力を求めるプロンプトが表示されたときにEnterキーを押すと、名前の設定が続行されません。それを設定する方法はありますか?

編集:Stringが.equals()を介して別の文字列と等しいかどうかを知りたくありません(ちょっと参考にしてください)。スキャナは空白の入力を受け付けません。

+4

.equals()を使用して文字列を比較します。 – Sweeper

+0

はjavaで、==はプリミティブ値の等価性またはオブジェクト参照の等価性に使用されます。 Sweeperのように、オブジェクトの値の平等は.equals()によって確認されます。 –

+0

True。ただし、空白文字を入力してスキャナで受け付けることはできません。 :/ – Jack

答えて

0
Scanner sc=new Scanner(System.in); 
    System.out.print("Enter your account's name: "); 
    String input = sc.nextLine(); 
    String name = ""; 
    // System.out.println(input); 
    if (input.isEmpty()) { 
     name = "Default"; 
    } else { 
     name = input; 
    } 
System.out.println(name); 

これは動作します。

関連する問題