Scanner 类

Scanner是一个基于正则表达式的文本扫描器,它可以从文件、输入流、字符串中解析出基本类型值和字符串值。

Scanner 主要提供了两个方法来扫描输入。

 ①hasNextXxx():是否有下一个输入项,其中Xxx可以是Int、Long等代表基本数据类型的字符,如果只是判断是否包含下一个字符串,则直接使用hasNext()。

 ②nextXxx() :获取下个输入项。

在默认情况下,Scanner使用空白作为多个输入项之间的分隔符。

可以使用useDelimiter()方法来设置分隔符,该方法参数为一个正则表达式。

import java.util.Scanner;

public class ScannerTest {

    public static void main(String[] args) {
        
        Scanner scanner = new Scanner(System.in);//读取键盘输入
        
        scanner.useDelimiter("\n");//将回车符设置为分隔符
       
        while (scanner.hasNext()) {
    
            System.out.println(scanner.next());

        }
    }
}
Scanner 提供了两个简单的方法来逐行读取。

boolean hasNextLine() :返回输入源是否还有下一行。

String nextLine():返回输入源中下一行的字符串。


Scanner 读取文件输入:

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

public class ScannerTest {

    public static void main(String[] args) throws FileNotFoundException {

        File file = new File("C:\\new.txt");//使用file类 可能会出现即便没有到文件末尾hasNextLine()和hasNext()仍返回false的情况。用FIleReader类则不会。
//<span style="white-space:pre">	FileReader fileReader =new FileReader("C:\\new.txt");</span>
        Scanner scanner = new Scanner(file);

        System.out.println(scanner.hasNextLine());

        while (scanner.hasNextLine()) {
            
            System.out.println(scanner.nextLine());
        }

    }
}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值