Detaillierte Erläuterung der Java-Scanner-Nutzung
Java-Scanner-Klasse
java .util.Scanner ist eine neue Funktion von Java5. Wir können Benutzereingaben über die Scanner-Klasse erhalten.
Das Folgende ist die grundlegende Syntax zum Erstellen eines Scanner-Objekts:
Scanner s = new Scanner(System.in);
Als nächstes demonstrieren wir die einfachste Dateneingabe und erhalten die Eingabezeichen über die Methoden next() und nextLine() des Scanners Klasse String, vor dem Lesen müssen wir im Allgemeinen hasNext und hasNextLine verwenden, um festzustellen, ob noch Eingabedaten vorhanden sind:
Nächste Methode verwenden:
ScannerDemo.java-Dateicode:
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(); } }
Das Ausgabeergebnis der Ausführung des obigen Programms ist:
$ javac ScannerDemo.java $ java ScannerDemo
Empfang im nächsten Modus:
runoob com
Die Eingabedaten sind: runoob
Sie können sehen, dass die COM-Zeichenfolge lautet nicht ausgegeben, als nächstes sehen wir nextLine.
NextLine-Methode verwenden:
ScannerDemo.java-Dateicode:
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(); } }
Das Ausgabeergebnis der Ausführung des obigen Programms ist:
$ javac ScannerDemo.java $ java ScannerDemo
nextLine-Methode empfängt:
runoob com
Die Eingabedaten sind: runoob com
Sie können die com-String-Ausgabe sehen.
next() und nextLine() Unterschiede
next():
1 Sie müssen gültige Zeichen lesen, bevor Sie die Eingabe beenden können.
2. Die next()-Methode entfernt automatisch die gefundenen Leerzeichen, bevor gültige Zeichen eingegeben werden.
3. Verwenden Sie erst nach der Eingabe gültiger Zeichen das dahinter eingegebene Leerzeichen als Trennzeichen oder Abschlusszeichen.
next() kann keine Zeichenfolgen mit Leerzeichen abrufen.
nextLine():
1 ist das Endzeichen, was bedeutet, dass die nextLine()-Methode alle Zeichen vor der Eingabe zurückgibt.
2. Sie können Leerzeichen erhalten.
Wenn Sie Daten vom Typ int oder float eingeben möchten, wird dies auch in der Scanner-Klasse unterstützt. Am besten verwenden Sie jedoch vor der Eingabe die Methode hasNextXxx() zur Überprüfung und verwenden Sie dann nextXxx() zum Lesen :
ScannerDemo.java-Dateicode:
import java.util.Scanner; public class ScannerDemo { public static void main(String[] args) { Scanner scan = new Scanner(System.in); // 从键盘接收数据 int i = 0; float f = 0.0f; System.out.print("输入整数:"); if (scan.hasNextInt()) { // 判断输入的是否是整数 i = scan.nextInt(); // 接收整数 System.out.println("整数数据:" + i); } else { // 输入错误的信息 System.out.println("输入的不是整数!"); } System.out.print("输入小数:"); if (scan.hasNextFloat()) { // 判断输入的是否是小数 f = scan.nextFloat(); // 接收小数 System.out.println("小数数据:" + f); } else { // 输入错误的信息 System.out.println("输入的不是小数!"); } scan.close(); } }
Das Ausgabeergebnis der Ausführung des obigen Programms ist:
$ javac ScannerDemo.java $ java ScannerDemo 输入整数:12 整数数据:12 输入小数:1.2 小数数据:1.2
Im folgenden Beispiel können wir mehrere Zahlen eingeben und berechnen Summe und Durchschnitt. Jedes Mal, wenn wir eine Zahl eingeben, bestätigen wir die Zahl mit der Eingabetaste, beenden die Eingabe durch die Eingabe einer Nicht-Zahl und geben das Ausführungsergebnis aus:
ScannerDemo.java-Dateicode:
import java.util.Scanner; class ScannerDemo { public static void main(String[] args) { Scanner scan = new Scanner(System.in); double sum = 0; int m = 0; while (scan.hasNextDouble()) { double x = scan.nextDouble(); m = m + 1; sum = sum + x; } System.out.println(m + "个数的和为" + sum); System.out.println(m + "个数的平均值是" + (sum / m)); scan.close(); } }
The Das Ausgabeergebnis der Ausführung des obigen Programms ist:
$ javac ScannerDemo.java $ java ScannerDemo 12 23 15 21.4 end 4个数的和为71.4 4个数的平均值是17.85
Empfohlen: „Java Learning“
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Verwendung des Java-Scanners. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!