Dane wejściowe użytkownika Java (skaner)


Wejście użytkownika Java

Klasa Scannersłuży do pobierania danych wejściowych użytkownika i znajduje się w java.utilpakiecie.

Aby użyć Scannerklasy, utwórz obiekt klasy i użyj dowolnej z dostępnych metod znajdujących się w Scannerdokumentacji klasy. W naszym przykładzie użyjemy nextLine()metody, która służy do odczytywania Strings:

Przykład

import java.util.Scanner;  // Import the Scanner class

class Main {
  public static void main(String[] args) {
    Scanner myObj = new Scanner(System.in);  // Create a Scanner object
    System.out.println("Enter username");

    String userName = myObj.nextLine();  // Read user input
    System.out.println("Username is: " + userName);  // Output user input
  }
}

Jeśli nie wiesz, czym jest pakiet, przeczytaj nasz samouczek dotyczący pakietów Java .


Typy wejść

W powyższym przykładzie użyliśmy nextLine()metody, która służy do odczytywania Strings. Aby przeczytać inne typy, spójrz na poniższą tabelę:

Method Description
nextBoolean() Reads a boolean value from the user
nextByte() Reads a byte value from the user
nextDouble() Reads a double value from the user
nextFloat() Reads a float value from the user
nextInt() Reads a int value from the user
nextLine() Reads a String value from the user
nextLong() Reads a long value from the user
nextShort() Reads a short value from the user

W poniższym przykładzie używamy różnych metod do odczytywania danych różnego typu:

Przykład

import java.util.Scanner;

class Main {
  public static void main(String[] args) {
    Scanner myObj = new Scanner(System.in);

    System.out.println("Enter name, age and salary:");

    // String input
    String name = myObj.nextLine();

    // Numerical input
    int age = myObj.nextInt();
    double salary = myObj.nextDouble();

    // Output input by user
    System.out.println("Name: " + name);
    System.out.println("Age: " + age);
    System.out.println("Salary: " + salary);
  }
}

Uwaga: Jeśli wprowadzisz nieprawidłowe dane wejściowe (np. tekst we wpisie numerycznym), otrzymasz komunikat o wyjątku/błędzie (np. „InputMismatchException”).

Możesz przeczytać więcej o wyjątkach i sposobach obsługi błędów w rozdziale Wyjątki .