Scanner用户交互

Scanner用户交互

Scanner对象

引入语法:

Scanner scanner=new Scanner(System.in);(固定的)

小写scanner为定义的名称

scanner.close();//需要关闭释放资源(固定的)

next();方法

  1. 一定要读取到有效字符才能结束

  2. 输入有效字符之前的空白(空格)自动去掉

  3. 输入有效字符之后的空格作为结束符,之后的内容不再接受

  4. next();方法不能接受空格字符

    hasNext();用来判断是否为空,是否符合我们所需要的。

nextLine();方法

  1. 以回车作为结束符,也就是说nextLine();方法返回的是输入回车之前的所有字符

  2. 可以获取空格

以上两种方法配合数据类型使用改变

例如想要获得的是整型数据

hasNextLine();同样用于判断输入的数据类型,是否为空等等

扩展:

包含了许多判断方法,hasNextInt(); hasNextFloat(); hasNextByte(); hasNextLong();

字符串直接用hasNext();和hasNextLine(); 这些与if()配合使用用来限定用户输入的数据是否符合需求。

通常放在赋值语句之前配合if()或while()使用。

 1 import java.util.Scanner;
 2 public class hehe {
 3     public static void main(String[] args) {
 4         System.out.println("输入整型数据!");
 5         Scanner s=new Scanner(System.in);
 6         if(s.hasNextInt())               //hasNextInt()非空为整数
 7         int a=s.nextInt();            //nextInt();接受整型数据
 8         System.out.println("得到的整型数据:"+a);
 9 10         s.close();                    //使用完毕就关闭,回收资源
11     }
12 }
13

 



字符串型数据直接使用next()或nextLine()即可

eg:

1   Scanner s=new Scanner(System.in);
2   string  str=s.nextLine();
3   s.close();
4  

 

posted @ 2021-02-09 12:42  赤叶秋枫  阅读(56)  评论(0编辑  收藏  举报