java.util.Scanner は Java5 の新機能で、Scanner クラスを通じてユーザー入力を取得できます。
Scanner オブジェクトを作成するための基本的な構文は次のとおりです。
Scanner s = new Scanner(System.in);
次に、最も単純なデータ入力を示し、Scanner クラスの next() を渡します。 nextLine() メソッドを使用して入力文字列を取得します。通常、読み取る前に、hasNext と hasNextLine を使用して入力データがまだあるかどうかを確認する必要があります:
次のメソッドを使用します:
import java.util.Scanner; public class ScannerDemo { public static void main(String[] args) { Scanner scan = new Scanner(System.in); // 从键盘接收数据 // next方式接收字符串 System.out.println("next方式接收:"); // 判断是否还有输入 if (scan.hasNext()) { String str1 = scan.next(); System.out.println("输入的数据为:" + str1); } scan.close(); } }
上記のプログラムを実行した出力結果は次のとおりです。
next方式接收: runoob com 输入的数据为:runoob
com 文字列が出力されていないことがわかります。次に nextLine を見てみましょう。
nextLine メソッドを使用します:
import java.util.Scanner; public class ScannerDemo { public static void main(String[] args) { Scanner scan = new Scanner(System.in); // 从键盘接收数据 // nextLine方式接收字符串 System.out.println("nextLine方式接收:"); // 判断是否还有输入 if (scan.hasNextLine()) { String str2 = scan.nextLine(); System.out.println("输入的数据为:" + str2); } scan.close(); } }
上記のプログラムを実行した出力結果は次のとおりです:
nextLine方式接收: runoob com 输入的数据为:runoob com
com 文字列出力。
next() と nextLine() の違い
next():
1. 必ずお読みください。入力を完了する前に、有効な文字である必要があります。
2. next() メソッドは、有効な文字を入力する前に見つかった空白を自動的に削除します。
3. 有効な文字を入力した後のみ、文字の後に入力した空白を区切り文字または終了文字として使用してください。
next() はスペースを含む文字列を取得できません。
nextLine():
1. Enter は終了文字であり、nextLine() メソッドが入力前のすべての文字を返すことを意味します。
2. 空白スペースを取得できます。
以上がJavaスキャナの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。