scanner的用法
一、什么是scanner?
在计算机编程中,scanner是一个常用的输入和文本解析类。它可以从用户输入、文件或字符串中读取数据,并将其分解成各个数据类型。通过使用scanner,我们可以轻松地实现键盘输入和文件读取等功能。
二、scanner的基本用法
要使用scanner,首先需要导入java.util.Scanner类,并创建一个Scanner对象。
import java.util.Scanner;
public class MyClass {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
    }
}
创建Scanner对象之后,我们就可以使用它的各种方法来读取输入的数据了。
1. 读取整数
通过使用Scanner对象的nextInt()方法,我们可以读取用户输入的整数。
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个整数:");
int num = scanner.nextInt();
System.out.println("你输入的整数是:" + num);
2. 读取浮点数
使用Scanner对象的nextDouble()方法,我们可以读取用户输入的浮点数。
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个浮点数:");
double num = scanner.nextDouble();
System.out.println("你输入的浮点数是:" + num);
3. 读取字符串
如果需要读取用户输入的字符串,可以使用Scanner对象的next()nextLine()方法。
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = scanner.next();
System.out.println("你输入的字符串是:" + str);
System.out.print("请输入一个字符串:");
String line = scanner.nextLine();
System.out.println("你输入的字符串是:" + line);
next()方法只会读取输入中的一个单词,以空格作为分隔符;nextLine()方法会读取一整行输入。根据需要选择合适的方法。
三、文本解析
除了从键盘读取用户输入,scanner还可以用于解析文件或字符串中的文本。下面将介绍scanner在文本解析中的应用。
1. 从文件中读取数据
使用Scanner对象的Scanner(File file)构造方法可以从文件中读取数据。
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class MyClass {
try catch的使用方法    public static void main(String[] args) {
        try {
            File file = new File("");
            Scanner scanner = new Scanner(file);
           
            while (scanner.hasNextLine()) {
                String line = scanner.nextLine();
                System.out.println(line);
            }
           
            scanner.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }
}
上述代码会按行读取文件””中的数据,并将每行数据打印到控制台上。
2. 从字符串中读取数据
使用Scanner对象的Scanner(String source)构造方法可以从字符串中读取数据。
String data = "Hello World!";
Scanner scanner = new Scanner(data);
while (scanner.hasNext()) {
    String word = scanner.next();
    System.out.println(word);
}
scanner.close();
上述代码会将字符串”Hello World!“按照空格进行分割,并逐个打印出来。
四、常见用法示例
除了上述基本用法外,scanner还有一些常见的用法示例,下面将逐一介绍。
1. 使用循环读取多个输入
我们经常会遇到需要读取多个输入的情况,此时可以使用循环结合scanner来实现。
Scanner scanner = new Scanner(System.in);
for (int i = 0; i < 5; i++) {
    System.out.print("请输入第" + (i + 1) + "个整数:");
    int num = scanner.nextInt();
    System.out.println("你输入的整数是:" + num);
}
scanner.close();
上述代码会读取用户输入的5个整数并打印出来。
2. 错误处理
在读取用户输入时,可能会遇到输入类型不匹配的情况。为了避免程序出错,我们可以使用try-catch语句进行错误处理。
Scanner scanner = new Scanner(System.in);
try {
    System.out.print("请输入一个整数:");
    int num = scanner.nextInt();
    System.out.println("你输入的整数是:" + num);
} catch (InputMismatchException e) {
    System.out.println("输入的不是一个整数!");
}
scanner.close();
如果用户输入的不是一个整数,程序会捕获InputMismatchException异常并给出错误提示信息。
五、总结
scanner是一个非常实用的类,它能够方便地读取用户输入和解析文本。通过本文,我们学习了scanner的基本用法,包括读取整数、浮点数、字符串,以及解析文件和字符串等高级用法。希望本文能对你在使用scanner时有所帮助!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。