Scanner

Scanner类中的常用方法


No.

方法

类型

描述

1

public Scanner(InputStream source)

构造

接收InputStream输入流对象,此为输入源

2

public boolean hasNext()

普通

判断是否有数据输入

3

public String next()

普通

取出输入数据,以String形式返回

4

public boolean hasNextXxx()

普通

判断是否有指定类型数据存在

5

public 数据类型 nextXxx()

普通

取出指定数据类型的数据

6

public Scanner useDelimiter(String pattern)

普通

设置读取的分隔符


利用Scanner实现键盘数据输入


import java.util.Scanner;
public class TestDemo {
	public static void main(String[] args) throws Exception { 	// 此处直接抛出
		Scanner scan = new Scanner(System.in); // 准备接收键盘输入数据
		System.out.print("请输入内容:");	// 提示信息
		if (scan.hasNext()) { 			// 是否有输入数据
			System.out.println("输入内容:" + scan.next());// 存在内容则输出
		}
		scan.close();
	}
}

输入一个数字 —— double


import java.util.Scanner;
public class TestDemo {
	public static void main(String[] args) throws Exception { // 此处直接抛出
		Scanner scan = new Scanner(System.in); 		// 准备接收键盘输入数据
		System.out.print("请输入成绩:");
		if (scan.hasNextDouble()) { 		// 表示输入的是一个小数
			double score = scan.nextDouble(); 	// 省略了转型
			System.out.println("输入内容:" + score);
		} else { 	// 表示输入的不是一个小数
			System.out.println("输入的不是数字,错误!");
		}
		scan.close();
	}
}

正则验证


import java.util.Scanner;
public class TestDemo {
	public static void main(String[] args) throws Exception { 	// 此处直接抛出
		Scanner scan = new Scanner(System.in) ;	// 准备接收键盘输入数据
		System.out.print("请输入生日:");	// 提示文字
		if (scan.hasNext("\\d{4}-\\d{2}-\\d{2}")) {	// 正则验证
			String bir = scan.next("\\d{4}-\\d{2}-\\d{2}") ;	// 接收数据
			System.out.println("输入内容:" + bir);
		} else {		// 数据格式错误
			System.out.println("输入的生日格式错误!");
		}
		scan.close(); 
	}
}

读取文件


import java.io.File;
import java.io.FileInputStream;
import java.util.Scanner;
public class TestDemo {
	public static void main(String[] args) throws Exception { // 此处直接抛出
		Scanner scan = new Scanner(new FileInputStream(new File("D:"
				+ File.separator + "yootk.txt")));// 设置读取的文件输入流
		scan.useDelimiter("\n"); // 设置读取的分隔符
		while (scan.hasNext()) {// 循环读取
			System.out.println(scan.next());	/ 直接输出读取数据
		}
		scan.close();
	}
}


  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值