Ich habe versucht, einen Taschenrechner zu erstellen, aber ich kann ihn nicht zum Laufen bringen, weil ich nicht weiß wie man Benutzereingaben erhält .
Wie kann ich die Benutzereingabe in Java erhalten?
Ich habe versucht, einen Taschenrechner zu erstellen, aber ich kann ihn nicht zum Laufen bringen, weil ich nicht weiß wie man Benutzereingaben erhält .
Wie kann ich die Benutzereingabe in Java erhalten?
Hier ist eine weiterentwickelte Version der akzeptierten Antwort, die auf zwei allgemeine Bedürfnisse eingeht:
Code
package inputTest;
import java.util.Scanner;
import java.util.InputMismatchException;
public class InputTest {
public static void main(String args[]) {
Scanner reader = new Scanner(System.in);
System.out.println("Please enter integers. Type 0 to exit.");
boolean done = false;
while (!done) {
System.out.print("Enter an integer: ");
try {
int n = reader.nextInt();
if (n == 0) {
done = true;
}
else {
// do something with the input
System.out.println("\tThe number entered was: " + n);
}
}
catch (InputMismatchException e) {
System.out.println("\tInvalid input type (must be an integer)");
reader.nextLine(); // Clear invalid input from scanner buffer.
}
}
System.out.println("Exiting...");
reader.close();
}
}
Beispiel
Please enter integers. Type 0 to exit.
Enter an integer: 12
The number entered was: 12
Enter an integer: -56
The number entered was: -56
Enter an integer: 4.2
Invalid input type (must be an integer)
Enter an integer: but i hate integers
Invalid input type (must be an integer)
Enter an integer: 3
The number entered was: 3
Enter an integer: 0
Exiting...
Beachten Sie, dass ohne nextLine()
wird die fehlerhafte Eingabe wiederholt dieselbe Ausnahme in einer Endlosschleife auslösen. Sie könnten Folgendes verwenden next()
stattdessen je nach den Umständen, aber Sie sollten wissen, dass Eingaben wie this has spaces
wird mehrere Ausnahmen erzeugen.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.