Java Scanner 扫描流类


扫描流

  • 从 JDK 1.5 后,Java 专门提供了输入数据类 Scanner,该类可以完成数据的输入,也可以方便地验证输入的数据;
  • 由于在 Scanner 类中有一个可以接收 InputStream 类的构造方法,所以只要是字节输入流的子类,都可以通过 Scanner 类方便地读取;
  • java.util.Scanner,详见:Class Scanner

1. 输入各类数据

  • 可以使用 Scanner 类实现基本的数据输入,其中最简单的办法就是直接使用 Scanner 类的 next() 方法来实现数据的输入;
  • 输入数据:
import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.println("请输入数据:");
        String str = scan.next();
        System.out.println("您输入的数据是:" + str);
    }
}
  • 输入各类数据:
import java.util.Scanner;

public class Test {
    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.println("请输入小数:");
        if (scan.hasNextFloat()) {
            f = scan.nextFloat();
            System.out.println("您输入的小数为:" + f);
        } else {
            System.out.println("您输入的不是小数!");
        }
        scan.close();
    }
}

2. 读取文件内容

import java.io.File;
import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Scanner scan = null;
        File f = new File("C:" + File.separator + "Users\\80626\\Desktop\\1.txt");
        try {
            scan = new Scanner(f);
        } catch (Exception e) {
        }
        StringBuffer str = new StringBuffer();
        while (scan.hasNext()) {
            str.append(scan.next()).append("\n");
        }
        System.out.println("文件内容为:\n" + str);
    }
}
/*
输出
文件内容为:
line
1
line
2
 */
发布了242 篇原创文章 · 获赞 244 · 访问量 9599

猜你喜欢

转载自blog.csdn.net/Regino/article/details/104744605