工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> Java

Java スキャナー クラス

Java スキャナー クラス

このチュートリアルでは、例を使用して Java スキャナーとそのメソッドについて学習します。

Scanner java.util のクラス パッケージは、入力ストリーム、ユーザー、ファイルなどのさまざまなソースから入力データを読み取るために使用されます。例を見てみましょう。


例 1:スキャナーを使用してテキスト行を読み取る

import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    // creates an object of Scanner
    Scanner input = new Scanner(System.in);

    System.out.print("Enter your name: ");

    // takes input from the keyboard
    String name = input.nextLine();

    // prints the name
    System.out.println("My name is " + name);

    // closes the scanner
    input.close();
  }
}

出力

Enter your name: Kelvin
My name is Kelvin

上記の例では、次の行に注目してください

Scanner input = new Scanner(System.in);

ここでは、Scanner のオブジェクトを作成しました。 名前付き input .

System.in パラメータは、標準入力から入力を取得するために使用されます。キーボードからの入力と同じように機能します。

次に nextLine() を使用しました Scanner のメソッド ユーザーからテキスト行を読み取るためのクラス

Scanner についてある程度理解できたので、 、それについてもっと調べてみましょう。


スキャナ クラスのインポート

上記の例からわかるように、 java.util.Scanner をインポートする必要があります Scanner を使用する前のパッケージ クラス。

import java.util.Scanner;

パッケージのインポートの詳細については、Java パッケージにアクセスしてください。


Java でスキャナ オブジェクトを作成する

パッケージをインポートしたら、Scanner を作成する方法を次に示します。 オブジェクト。

// read input from the input stream
Scanner sc1 = new Scanner(InputStream input);

// read input from files
Scanner sc2 = new Scanner(File file);

// read input from a string
Scanner sc3 = new Scanner(String str);

ここでは、Scanner のオブジェクトを作成しました。 InputStream、File、および String からそれぞれ入力を読み取るクラス。


入力を受け取る Java スキャナ メソッド

Scanner クラスは、さまざまなタイプの入力を読み取ることができるさまざまなメソッドを提供します。

メソッド 説明
nextInt() int を読み取ります ユーザーからの価値
nextFloat() float を読み取ります ユーザーからの値
nextBoolean() boolean を読み取ります ユーザーからの価値
nextLine() ユーザーからテキスト行を読み取ります
next() ユーザーから単語を読み上げる
nextByte() byte を読み取ります ユーザーからの価値
nextDouble() doubl を読み取ります ユーザーからの値
nextShort() short を読み取ります ユーザーからの価値
nextLong() long を読み取ります ユーザーからの価値

例 2:Java スキャナ nextInt()

import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    // creates a Scanner object
    Scanner input = new Scanner(System.in);

    System.out.println("Enter an integer: ");

    // reads an int value
    int data1 = input.nextInt();

    System.out.println("Using nextInt(): " + data1);

    input.close();
  }
}

出力

Enter an integer:
22
Using nextInt(): 22

上記の例では、nextInt() を使用しています。 整数値を読み取るメソッド。


例 3:Java スキャナ nextDouble()

import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    // creates an object of Scanner
    Scanner input = new Scanner(System.in);
    System.out.print("Enter Double value: ");

    // reads the double value
    double value = input.nextDouble();
    System.out.println("Using nextDouble(): " + value);

    input.close();
  }
}

出力

Enter Double value: 33.33
Using nextDouble(): 33.33

上記の例では、nextDouble() を使用しています。 浮動小数点値を読み取るメソッド。


例 4:Java スキャナ next()

import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    // creates an object of Scanner
    Scanner input = new Scanner(System.in);
    System.out.print("Enter your name: ");

    // reads the entire word
    String value = input.next();
    System.out.println("Using next(): " + value);

    input.close();
  }
}

出力

Enter your name: Jonny Walker
Using next(): Jonny

上記の例では、next() を使用しています。 ユーザーから文字列を読み取るメソッド

ここでは、フルネームを指定しました。ただし、next() メソッドは名のみを読み取ります。

これは next() メソッドは入力を空白まで読み取ります キャラクター。 空白 が検出された場合、文字列を返します (空白を除く)。


例 5:Java スキャナ nextLine()

import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    // creates an object of Scanner
    Scanner input = new Scanner(System.in);
    System.out.print("Enter your name: ");

    // reads the entire line
    String value = input.nextLine();
    System.out.println("Using nextLine(): " + value);

    input.close();
  }
}

出力

Enter your name: Jonny Walker
Using nextLine(): Jonny Walker

最初の例では、nextLine() を使用しました。 ユーザーから文字列を読み取るメソッド

next() とは異なります 、nextLine() メソッドは、スペースを含む入力行全体を読み取ります。次の行文字 \n に遭遇すると、メソッドは終了します .

推奨読書: Java スキャナは nextLine() をスキップします。


BigInteger と BigDecimal を備えた Java スキャナ

Java スキャナーを使用して、大きな整数と大きな 10 進数を読み取ることもできます。


例 4:BigInteger と BigDecimal を読み取る

import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    // creates an object of Scanner
    Scanner input = new Scanner(System.in);
    System.out.print("Enter a big integer: ");

    // reads the big integer
    BigInteger value1 = input.nextBigInteger();
    System.out.println("Using nextBigInteger(): " + value1);

    System.out.print("Enter a big decimal: ");

    // reads the big decimal
    BigDecimal value2 = input.nextBigDecimal();
    System.out.println("Using nextBigDecimal(): " + value2);

    input.close();
  }
}

出力

Enter a big integer: 987654321
Using nextBigInteger(): 987654321
Enter a big decimal: 9.55555
Using nextBigDecimal(): 9.55555

上記の例では、java.math.BigInteger を使用しています。 と java.math.BigDecimal BigInteger を読み取るパッケージ および BigDecimal


Java スキャナの働き

Scanner クラスは行全体を読み取り、行をトークンに分割します。トークンは、Java コンパイラにとって何らかの意味を持つ小さな要素です。たとえば、

入力文字列があるとします:

He is 22

この場合、スキャナー オブジェクトは行全体を読み取り、文字列をトークンに分割します:"He "、" 」と「22 "。その後、オブジェクトは各トークンを繰り返し処理し、さまざまなメソッドを使用して各トークンを読み取ります。

注意 :デフォルトでは、トークンを区切るために空白が使用されます。


Java

  1. Java 最終キーワード
  2. オペレーターの Java インスタンス
  3. Java 継承
  4. Java ネストされた静的クラス
  5. Java匿名クラス
  6. Java シングルトン クラス
  7. Java リフレクション
  8. Java ObjectOutputStream クラス
  9. Java スキャナー クラス
  10. Javaジェネリック
  11. Java ファイル クラス