2016-11-12 36 views
1

ユーザが混合入力を入力したときにどうすればよいですか?整数と文字列の両方をユーザから取得するには

私たちは、整数のためにこれを使用

Scanner input = new Scanner(System.in); 
int number = input.nextInt(); 

私たちは、文字列のためにこれを使用します。

Scanner input = new Scanner(System.in); 
String name = input.next(); 

はどのように我々は一度にそれらの両方を使用できますか? 例:password123 どうすれば保存できますか?

私はJava汎用クラスを使用すべきだと思います。私はJava Gnericを検索しましたが、わかりませんでした。

ありがとうございます。

+1

password123は文字列なので、input.next();を使用する必要があります。 – developer

+0

OPはさまざまな入力タイプに渡ってより汎用的なソリューションを探しています。 –

+0

両方を保存しますか?スキャナは文字列パターンを検出し、1つのタイプのみを返すことができます。 –

答えて

1

password123は文字列で、数字が含まれています。

だから、これは動作するはず使用:

Scanner input = new Scanner(System.in); 
String name = input.next(); 
+0

ご協力いただきありがとうございます。ユーザーが入力した入力の種類を知らずに保存するにはどうすればよいですか? – uyusuk

+0

@uyusuk何を意味していますか? – ItamarG3

+0

OPはさまざまな入力タイプ間でより汎用的なソリューションを探しています。 –

0

ソリューション:あなたは、ユーザーから取得するつもりだかわからないため、文字列としてすべての入力を処理します。後で必要に応じてintに変換するか、データが何を表すかについてより多くのコンテキストがある場合は必要に応じて変換します。

0

スキャナは、一度に1つのタイプのみを返すことができます。複数の入力がある場合は、複数回入力を求めるメッセージが表示されます

Scanner input = new Scanner(System.in); 
System.out.print("Your name is: "); 
String name = input.next(); 
System.out.print("Your age is: "); 
int age = input.nextInt(); 
0

唯一の解決策は、最初にStringに配置することです。 password123のような数字のある単語は文字列になります。の整数には単語または文字を含めることができないためです。

関連する問題