Java -gebruikersinvoer (scanner)
Java-gebruikersinvoer
De Scanner
klasse wordt gebruikt om gebruikersinvoer te krijgen en is te vinden in het java.util
pakket.
Om de Scanner
klasse te gebruiken, maakt u een object van de klasse aan en gebruikt u een van de beschikbare methoden die in de Scanner
klassendocumentatie staan. In ons voorbeeld gebruiken we de nextLine()
methode die wordt gebruikt om Strings te lezen:
Voorbeeld
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
}
}
Als je niet weet wat een pakket is, lees dan onze Java Packages Tutorial .
Invoertypen
In het bovenstaande voorbeeld hebben we de nextLine()
methode gebruikt die wordt gebruikt om Strings te lezen. Bekijk de onderstaande tabel om andere typen te lezen:
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 |
In het onderstaande voorbeeld gebruiken we verschillende methoden om gegevens van verschillende typen te lezen:
Voorbeeld
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);
}
}
Opmerking: Als u een verkeerde invoer invoert (bijvoorbeeld tekst in een numerieke invoer), krijgt u een uitzonderings-/foutmelding (zoals "InputMismatchException").
U kunt meer lezen over uitzonderingen en hoe u met fouten omgaat in het hoofdstuk Uitzonderingen .