Exception in thread "main" java.util.InputMismatchException

java.util.Scanner s = new java.util.Scanner();

在java中,申明了以上指令,就可以使用
int num = s.nextInt();
String sents = s.next();
这样的语句来为变量动态赋值。
注意:java中,s.next()方法和C中的scanf(" “, &)极其相似。在动态输入的过程中,空字符会将输入流自然地隔断,s.next()与scanf(” ", &)在抓取留中的数据时,一次只读取一个单元,单元可以是数字,字符,字符串。完整的输入流被(空格符–’ ‘,回车符–’\n’ ,制表符–’\t’.)切割成单元。当读取但预设的个数时,遇到’\n’,程序运行下一条指令,即停止动态输入,类型不匹配时,即报错,报错如下:

public class FuXi{
	public static void main(String[] args){
		System.out.println("======================");
		System.out.println("Please enter a number:");
		java.util.Scanner s = new java.util.Scanner(System.in);
		String juZi = s.next();
		int num = s.nextInt();
		System.out.println("sentense is"+juZi+"number is"+num);
	}
}

在这里插入图片描述
s.next();会自动在输入流获取下一个单元,如果上一次输入的是用空白符隔开的两个单元,则不等待输入,直接获取下一个单元。演示如下:

public class FuXi{
	public static void main(String[] args){
		System.out.println("======================");
		System.out.println("Please enter a number:");
		java.util.Scanner s = new java.util.Scanner(System.in);
		
		int num = s.nextInt();
		System.out.println("The number is "+num);
		System.out.println("======================");
		String juZi = s.next();
		System.out.println("The sentense is "+juZi);
	}
}

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值