Java初级学习(六)Java之用户交互Scanner(获取用户输入)

Scanner类会导入

import java.util.Scanner;

1.创建一个Scanner对象用于获取用户输入

1 public static void main(String[] args) {
2         //这句话的编写顺序为,先写new Scanner(System.in);,然后将鼠标放在;后,按住Alt+回车,选择第一个,回车。
3         //再修改参数scanner的名字为s,回车,这句话就完成了。
4         Scanner scanner = new Scanner(System.in);
5         //最后一定要关闭,最好创建scanner对象的时候就先写上关闭语句。
6         scanner.close();
7     }

2.Scanner对象的next()方法(不常用)

1)读取到有效字符后才可以结束输入;

2)自动忽略输入的有效字符之前的空白,有效字符之后的空白会被认为是分隔符或结束符

 

 1 public static void main(String[] args) {
 2         //创建一个扫描器对象scanner1,用于接收键盘数据
 3         Scanner scanner1 = new Scanner(System.in);
 4         System.out.println("使用next()方式接收:");
 5         //判断scanner1有没有内容,默认为if (scanner1.hasNext()==true)
 6         if (scanner1.hasNext()){
 7             //使用next()接收
 8             String str1 = scanner1.next();
 9             System.out.println("你输入的内容为:"+str1);
10         }
11 
12         //最后一定要关闭,最好创建scanner对象的时候就先写上关闭语句。
13         scanner1.close();
14     }

 

 

 

 

 

 3.Scanner对象的nextline()方法(常用)

回车为结束符,可以读取空白

 1 public static void main(String[] args) {
 2         //创建一个扫描器对象scanner2,用于接收键盘数据
 3         Scanner scanner2 = new Scanner(System.in);
 4         System.out.println("使用nextline()方式接收:");
 5         //判断scanner2有没有内容,默认为if (scanner2.hasNext()==true)
 6         if (scanner2.hasNextLine()){
 7             //使用nextline()接收
 8             String str2 = scanner2.nextLine();
 9             System.out.println("你输入的内容为:"+str2);
10         }
11 
12         //最后一定要关闭,最好创建scanner对象的时候就先写上关闭语句。
13         scanner2.close();
14     }

 

4.Scanner进阶

 1)Scanner还有一些其他方法可以使用,例如hasNextInt、hasNextFloat等

 1 public class Demo08 {
 2     public static void main(String[] args) {
 3         //创建scanner用于从键盘接收数据
 4         Scanner scanner = new Scanner(System.in);
 5 
 6         int i=0;
 7         float f = 0.0f;
 8         //从键盘接收数据
 9         System.out.println("请输入数据:");
10         if (scanner.hasNextInt()){
11             System.out.println("你输入的是一个整数!");
12         }else if (scanner.hasNextFloat()){
13             System.out.println("你输入的是一个小数!");
14         }else{
15             System.out.println("未知数!");
16         }
17         scanner.close();
18 
19     }
20 }

2)小练习:求若干个数的平均值

 1 import java.util.Scanner;
 2 
 3 //Scanner进阶2
 4 public class Demo10 {
 5     public static void main(String[] args) {
 6         //输入若干个数字,求和与平均数
 7         Scanner scanner = new Scanner(System.in);
 8         
 9         System.out.println("请输入数字,以回车确认,以非数字结束:");
10         double sum = 0;
11         int i =0;
12 
13         while (scanner.hasNextDouble()){
14             double x = scanner.nextDouble();
15             i++;
16             sum += x;   //也就是sum=sum+x
17         }
18         System.out.println("所有数字的和为"+sum);
19         System.out.println("平均数为"+sum/i);
20 
21         scanner.close();
22     }
23 
24 }

 

posted @ 2021-06-22 10:30  阮真冬  阅读(250)  评论(0)    收藏  举报