java基础-Scanner接收用户输入

java接收用户输入(Scanner)

Scanner是JDK 1.5新增的一个类,可以使用该类创建一个对象,对象再调用下列方法,读取用户在输入行中输入的各种基本类型的数据。

nextBoolean(),nextByte(),nextShort(),nextInt(),nextLong(),nextFloat(),nextDouble(),

下面举个例子

import java.util.Scanner;
public class qiqi{
	public static void main (String args[]){
		Scanner input = new Scanner(System.in);
		int i = input.nextInt();	//只能输入固定的类型,不然会报错
	}
}

那当我们想接收一个字符的时候,应这样写:

Scanner input = new Scanner();
char aa = input.next().charAt(0);

当我们输入的内容和需要接收的类型不一致时会出错,所以可以以接收字符串的形式来避免接收异常:

Scanner input = new Scanner();
String s = input.next();

next()和nextLine()的区别

到这里可能有小伙伴见过String s=input.nextLine();,这条语句同样是接收字符串,那么next()和nextLine();有什么区别呢?
String s=input.next(); //接收一段文字,不能接收空格或回车,所以但输入空格或回车就相当于结束了输入,但只有输入有效字符再按 回车或空格才有效,才能结束输入
String s=input.nextLine(); //接收一行的输入,只有按回车才能结束输入,空格还是属于输入的内容,直接输入回车就会结束输入,相当于内容为一个回车,如果先输入空格再输入abc,则内容相当于空格加abc

(注:如果next()和nextLine()先后使用,例如输入abc,按回车,那么它将不会提示接收nextLine()的内容,应为输入abc,按换行,满足了第next()的内容,而nextLine()接收满足了换行操作,所以就不会再提示输入nextLine()的内容)
所以这两个方法不要同时用。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值