JAVA学习第十天:Scanner,next,nextline

用户交互Scanner

交互

操作者与电脑互动。

方式(next和nextline操作类似)

  1. 输入new Scanner(Systerm in),后Alt+回车(这一步表示用next的方式接收来自操作者输入的数据);

  2. 使用一个if结构(判断是否有用户输入),条件是scanner.hasNext,随后在执行的部分里定义一个字符串,具体格式为:String str = scanner.next();或者,直接String str = scanner.next();

  3. 最后输出即可。

注意

  1. 使用完后记得关闭scanner(在方法之内关闭);

  2. 属于IO流的类都要关闭。

next()

  1. 一定在读取到有效字符后才会结束;

  2. 若有效字符前有空白,next()会把空白和空白后面的有效字符都省略;

  3. 只有输入有效字符后才能把空白当作分隔符或结束符;

  4. next()不能得到带有空格的字符串。

nextline()

  1. 结束符是enter,输出所有用户输入的字符;

  2. 可以输出空白。

实例

实例一:


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();
  }
}

实例二:

public static void main(String[] args) {
       Scanner scanner = new Scanner(System.in);
       int i = 0;
       float f = 0.1f;
       System.out.println("请输入整数:");
       if (scanner.hasNextInt()) {
           i = scanner.nextInt();
           System.out.println("整数数据为:" + i);
      } else {
           System.out.println("您输入的不是整数!");

      }
       System.out.println("请输入小数:");
       if (scanner.hasNextFloat()) {
           f = scanner.nextFloat();
           System.out.println("小数数据为:" + f);
      } else {
           System.out.println("您输入的不是小数!");
      }
       scanner.close();

  }
}

实例三:

public class Demo04 {
   public static void main(String[] args) {
       Scanner scanner = new Scanner(System.in);
       double sum = 0;
       int m = 0;
       while(scanner.hasNextDouble()){
           double v = scanner.nextDouble();
           sum = sum + v;
           m = m+1;
           System.out.println("你输入了"+m+"个数据,"+"当前的和为:"+sum);

      }
       System.out.println(m+"个数的和是"+sum);
       System.out.println("它们的平均数是"+sum/m);




       scanner.close();
  }

}

 

posted @ 2020-11-24 12:04  lxh8  阅读(227)  评论(0)    收藏  举报