第十天的学习--scanner
第十天的学习
Scanner对象
基本语法

即 Scanner xxx = new Scanner(System.in);
之前学的sout是System.out,out是输出,in是输入。
操作流程
代码流程如下:
这里用的是next方式

输出栏如下:

这时在输出栏中输入:Hello World(中间有空格)

可以发现,只输出了一个Hello,这是因为next方法无法输出带有空格的字符串。这时就需要换成nextline方法。
如下图:

这时在输出栏中输入:Hello World(中间有空格)

可以看出,完整的输出了Hello World这一串字符。
下面是注意点:

next():命令
- 不输入有效字符,程序会一直运行。
- 输入有效字符前输入的空格,会被自动去掉。
- 输入有效字符过程中如果有空格,就会被当成分隔符或结束符。
- 基于以上几点,此命令不能得到带空格的字符串。
nextLine():命令
- 不输入有效字符,程序会一直运行。
- 以Enter,也就是回车作为结束符。所以在回车之前的所有输入的字符,都会被输出。
- 什么都不输入,直接回车,是可以的,可以得到空白。
无判断流程
无判断即去掉 if 命令。

开关扫描器是固定的套路,第二句和第三句就是sout加自己想表达出的话,中间一个也是固定的,用nextLine比较好。
整数小数

最好是先把开关scanner都写了,然后在中间写代码,这样不会忘记关。
先写一个整数的:

再来一个小数的:

小数和整数基本一致,只是把 i 变成 f ,把Int变成Float,然后把整数改为小数即可。
接下来是正确示例:

先输入10回车,再输入10.1回车。
错误示例:

输入10.1,因为不是整数,所以输出了“你输入的不是整数数据!”,再然后发现输入的是小数,直接流程就结束了。
求和,平均数等计算
流程示例:

要记得把scanne给关了!!!流程比较长我没截图到。
下面开始输出:

打一个数字回车一下,然后输入一个不是数字的结束这个过程。
有意思的是,如果你把上图流程中括号的地方移一下位置,那么每输入一个数字回车一下后,就会提示你几个数的和为:……,几个数的平均数为:……
人性化
你自然也可以加一下人性化的东西,比如在一开始输出一句:“请输入数字:”,或者在过程中加一句“你输入了第m个数字,当前总和为……”
如下图:


输出结果如下:

以上所有学到的知识,除小部分我自行百度外,其余全是从B站UP遇见狂神说那里学习得来的。
非常良心的一位UP,Java课程全部免费,大家快去关注他!!!
对了,他还自建了一个学习网站,课程全部免费,链接就在这里,一起来学习吧!!!https://www.kuangstudy.com/

浙公网安备 33010602011771号