Scanner的用法
Scanner的用法
scanner的基本语法
Scanner s = new Scanner(System.in);
java.util.Scanner(java的工具包Scanner)是java5的新特征,我们可以通过Scanner类来获取用户的输入
注意:在main函数下面写出new Scanner(),就会出现第一行java.util.Scanner
-
通过Scanner类的next()方法获取输入的字符串,在读取前我们一般需要使用hasNext()判断是否还有输入的数据。
package scanner; import java.util.Scanner; public class Demo01 { public static void main(String[] args) { //创建一个扫描对象,用于接收键盘对象。 Scanner scanner = new Scanner(System.in); System.out.println("使用next方式接收:"); //判断用户有没有输入字符串 if (scanner.hasNext()) { //使用next方式接收 String str = scanner.next();//程序会等待用户输入完毕 System.out.println("输出的内容为:" + str); } scanner.close();//凡是属于IO流的类如果不关闭会一直占用资源,要养成好习惯用完就关掉 } }
运行结果为
-
通过Scanner类的nextLine()方法获取输入的字符串,在读取前我们一般需要用hasNextLine()判断是否还有输入的数据.
package scanner;
import java.util.Scanner;
public class Demo02 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);//从键盘接收数据
System.out.println("使用nextline方式接收:");
//判断是否还有输入
if (scanner.hasNextLine()) {
String str = scanner.nextLine();
System.out.println("输出的内容为:" + str);
}
scanner.close();
}
}
运行结果为
通过运行结果可以看到hasNext()和hasNextLine()的区别:
- 去掉if语句同样可以运行出结果
package scanner;
import java.util.Scanner;
public class Demo03 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入数据:");
String str = scanner.nextLine();
System.out.println("输出的内容为:" + str);
scanner.close();
}
}
运行结果为
-
next的其他用法
package scanner; import java.util.Scanner; public class Dmo04 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //从键盘输入数据 int i = 0; float f = 0.0f; System.out.println("请输入整数型:"); //如果、、、那么 if (scanner.hasNextInt()) { i = scanner.nextInt(); System.out.println("整数数据:" + i); } else { System.out.println("输出的不是整数数据!"); } //如果、、、那么 if (scanner.hasNextFloat()) { f = scanner.nextFloat(); System.out.println("小数数据:" + f); } else { System.out.println("输出的不是小数数据!"); } scanner.close(); } }
运行结果为
-
学习一个案列
package scanner; import java.util.Scanner; public class Demo05 { public static void main(String[] args) { //我们可以输入多个数字,并求其总和和平均数,每输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果: Scanner scanner = new Scanner(System.in); //和 double sum = 0; //计算输入了多少个数字 int m = 0; //通过循环判断是否还有输入,并在里面对每一次求和和统计 while (scanner.hasNextDouble()) { double x = scanner.nextDouble(); m = m + 1; sum = sum + x; System.out.println("你输入了第"+m+"个数据,然后当前的结果sum="+sum); } System.out.println(m+"输出的和为"+sum); System.out.println(m+"个数的平均值是"+(sum/m)); scanner.close(); } }
运行结果为
注意:
要注意字母的大小写,特别是里面的scanner
后面的几个运行结果都是要等待输入才能得出结果
拓展
按住ctrl键,点击Scanner(大写的类),再点击屏幕最左下角的structure即可看到很多用法结构。
本文作者:以玖
本文链接:https://www.cnblogs.com/BlogRegisteraspx11/p/16131598.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
标签:
Day7
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步