java.util.Scanner
是Java5的新特性Scanner scanner = new Scanner(System.in); ... scanner.close();
通过Scanner类的next()
与nextLine()
方法获取输入的字符串
hasNext()
与hasNextLine()
判断是否还有输入的数据。next()
:
nextLine()
:
以Enter
为结束符
可以获得带空白字符的字符串
package com.kuang.scanner; import java.util.Scanner; public class Demo01 { public static void main(String[] args) { //创建一个扫描器对象,用于接收键盘数据 Scanner scanner = new Scanner(System.in); System.out.println("使用next方式接收:");//输入hello world //判断用户有没有输入字符串 //如果输入了 if (scanner.hasNext()) { //使用next方式接收 String str = scanner.next(); System.out.println("输出的内容为:" + str);//输出hello } //凡是属于IO流的类如果不关闭会一直占用资源,要养成良好习惯用完关掉 scanner.close(); } }
package com.kuang.scanner; import java.util.Scanner; public class Demo02 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("使用nextLine方式接收:");//输入hello world if (scanner.hasNext()) { String str = scanner.nextLine(); System.out.println("输出的内容为:" + str);//输出hello world } scanner.close(); } }
、、其实这个demo用不到if,前面写上if也只是为了介绍下if这种判断用法 package com.kuang.scanner; import java.util.Scanner; public class Demo03 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入:");//输入hello world String str = scanner.nextLine(); System.out.println("输出的内容为:" + str);//输出hello world scanner.close(); } }
package com.kuang.scanner; import java.util.Scanner; public class Demo05 { public static void main(String[] args) { //我们可以输入多个数字,并求其总和与平均数,每输入一个数字用回车确认;通过输入非doble来结束输入并输出最终结果 Scanner scanner = new Scanner(System.in); //和 double sum = 0; //计数器 int m = 0; // 通过循环判断是否还有输入,并在里面对每一次进行求和和展示 // 循环终止条件:没有输入double类型数字,比如'x' while (scanner.hasNextDouble()) { double x = scanner.nextDouble(); sum += x; m++; System.out.println("你输入了第" + m + "个数据,当前结果sum=" + sum); } System.out.println(m + "个数的和为:" + sum); System.out.println(m + "个数的平均值为:" + (sum / m)); scanner.close(); } }