Heim > Java > javaLernprogramm > Hauptteil

Detaillierte Erläuterung der Verwendung des Java-Scanners

藏色散人
Freigeben: 2020-05-30 11:39:18
Original
10168 Leute haben es durchsucht

Detaillierte Erläuterung der Verwendung des Java-Scanners

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);
Nach dem Login kopieren

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();
    }
}
Nach dem Login kopieren

Das Ausgabeergebnis der Ausführung des obigen Programms ist:

$ javac ScannerDemo.java
$ java ScannerDemo
Nach dem Login kopieren
Nach dem Login kopieren

Empfang im nächsten Modus:

runoob com
Nach dem Login kopieren

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();
    }
}
Nach dem Login kopieren

Das Ausgabeergebnis der Ausführung des obigen Programms ist:

$ javac ScannerDemo.java
$ java ScannerDemo
Nach dem Login kopieren
Nach dem Login kopieren

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();
    }
}
Nach dem Login kopieren

Das Ausgabeergebnis der Ausführung des obigen Programms ist:

$ javac ScannerDemo.java
$ java ScannerDemo
输入整数:12
整数数据:12
输入小数:1.2
小数数据:1.2
Nach dem Login kopieren

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();
    }
}
Nach dem Login kopieren

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
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage