天天看点

接收用户输入——Scanner类

今天学会了如何接收用户的键盘输入

接收用户输入是什么意思呢?

这是我的理解:

eclipse中有编写代码的区域和结果显示的区域(控制台),我们一般都是在代码区进行操作,然后执行结果会显示在控制台,就可以说明控制台能够读懂我们在代码区写的代码,那么反过来,如果我在控制台上输入一些内容,让代码区能够读懂这些内容这个过程就是接收用户输入。

如何接收用户输入?

这里就需要一个“扫描仪”——Scanner,Scanner是Java提供的能够读取键盘输入的一个类,具体如下:

接收用户输入——Scanner类

 Scanner input = new Scanner(System.in)是啥意思?

Scanner是一个标准的Oracle类,用于扫描读取控制台的输入;

input是变量名,你可以取其他名字;

new Scanner按字面意思就是新的scanner类

System.in是标准输入流(也叫键盘输入流),即从控制台输入

连起来意思就是:扫描从控制台输入的内容作为一个新的scanner对象赋值给input这个变量

简而言之,就是把从控制台读取到的东西定义为一个新的变量。

接着需要输出一个题目:System.out.println("请输入xxxxxx")让其作为指令出现在控制台上

int i = input.nextInt();定义一个变量i为用户输入的整型数据类型,这里的数据类型还可以是nextDouble,nextByte,nextChar等等,如果定义的是这些数据类型的话,用户输入的必须是是相应的数据类型,否则执行结果会报错,就比较限制,而且很麻烦。

那有没有更加简便的方法呢?

有!

①input.next();   用户可以输入各种数据类型,返回值是字符串(String str = input.next())只能读取到有效字符串,字符串之后遇到回车或空格或tab键即结束。

什么是有效字符串?

例如:空格空格空格123    123就是有效字符串

空格123空格345      只有123是有效字符串,输出的也只有123,因为123后有空格,一遇回车或空格或tab键程序即结束。

接收用户输入——Scanner类
接收用户输入——Scanner类

②input.nextLine();用户可以输入各种数据类型,返回值也是字符串

(String str = input.nextLine()),但可以读取整行内容,遇回车才会结束。

例如:123空格456        读取到的就是123 456

接收用户输入——Scanner类

今天的快乐就到此为止吧!

明天依旧享受和Java的欢乐时光!