Scanner对象

Scanner对象

 

 

例1:

 1 package com.wang.scanner;
 2 
 3 import java.util.Scanner;
 4 
 5 public class Demo01 {
 6     public static void main(String[] args) {
 7         //创建一个扫描器对象,用于接收键盘数据
 8         Scanner scanner = new Scanner(System.in);
 9         System.out.println("使用next方式接收:\n");
10 
11         //hasNext()方法判断用户有没有输入字符串
12         if(scanner.hasNext()){      
13             //使用next方式接收
14             String str=scanner.next();   //程序会等待用户输入完毕
15             System.out.println("输出的内容为:"+str);
16         }
17         //scanner对象是属于输入i/o类,如果不关闭会一直占用资源,就好比如开了水龙头不关
18         scanner.close();
19     }
20 }



当输入hello world时,输出结果:
Scanner对象

 

 

 

 

例2:

 1 package com.wang.scanner;
 2 
 3 import java.util.Scanner;
 4 
 5 public class Demo02 {
 6     public static void main(String[] args) {
 7       //创建一个扫描器对象,用于接收键盘数据
 8         Scanner scanner = new Scanner(System.in);
 9         System.out.println("使用nextline方式接收:\n");
10      //hasNextLine()方法判断用户有没有输入字符串
11         if(scanner.hasNextLine()){
12             String str=scanner.nextLine();
13             System.out.println("输出为:"+str);
14         }
15         //scanner对象是属于输入i/o类,如果不关闭会一直占用资源,就好比如开了水龙头不关
16         scanner.close();
17     }
18 }

当输入hello world时,输出结果:
Scanner对象

 

 


 

  • next()和nextline()的作用和区别

Scanner对象

例3

 1 package com.wang.scanner;
 2 
 3 import java.util.Scanner;
 4 //不用if判断语句,直接输入输出
 5 public class Demo03 {
 6     public static void main(String[] args) {
 7         Scanner scanner = new Scanner(System.in);
 8         System.out.println("please input :\n");
 9 
10         String str= scanner.nextLine();
11         System.out.println(str);
12         scanner.close();
13     }
14 
15 }

 

 例4:

当定义的变量为基本数据类型时(int、float...)
 1 package com.wang.scanner;
 2 
 3 import java.util.Scanner;
 4 
 5 //当定义的变量为基本数据类型时(int、float...)
 6 public class Demo04 {
 7     public static void main(String[] args) {
 8         Scanner scanner = new Scanner(System.in);
 9         //从键盘接收数据
10         int a = 0;
11         float b = 0.0f;
12 
13 
14         System.out.println("请输入一个整数:");
15         if (scanner.hasNextInt()) {   //hasNext后面必须加上他们的数据类型
16             a = scanner.nextInt();    //next后也必须加上他们的数据类型
17             System.out.println(a);
18         }else{
19             System.out.println("您输入的不是整数");
20         }
21 
22         System.out.println("请输入一个小数:");
23         if (scanner.hasNextFloat()) {
24             b = scanner.nextFloat();
25             System.out.println(b);
26         }else{
27             System.out.println("您输入的不是小数");
28         }
29         scanner.close();
30       }
31     }

 

例5:

输入多个数字,求其总和与平均数,每输入一个数字用回车确认,通过输入非数字结束输入并输出结果
 1 package com.wang.scanner;
 2 
 3 import java.util.Scanner;
 4 
 5 public class Demo05 {
 6     public static void main(String[] args) {
 7         //输入多个数字,求其总和与平均数,每输入一个数字用回车确认,通过输入非数字结束输入并输出结果
 8         Scanner scanner = new Scanner(System.in);
 9 
10         //
11         double sum=0;
12         //计算输入了多少个数字
13         int m = 0;
14 
15         //通过循环判断是否还有输入,并在里面对每一次进行求和统计
16         System.out.println("请输入数据:");
17         while(scanner.hasNextFloat()){
18             double x=scanner.nextDouble();
19             m+=1;
20             sum+=x;
21             System.out.println("您输入了第"+m+"个数据,当前结果sum="+sum);
22         }
23         System.out.println(m+"个数的和为"+sum);
24         System.out.println(m+"个数的平均值为"+(sum/m));
25 
26         scanner.close();
27     }
28 }

 

 

 

Scanner对象

上一篇:Prometheus 2.21.0 新特性


下一篇:HarmonyOS官方文档记录