Day10-Scanner对象

Scanner对象

next()方法

  1. 一定要读取到有效字符后,才可以结束输入
  2. 对输入在有效字符之前的空白,next()方法会自动将其去掉
  3. 对输入在有效字符之后的空白,next()方法会将他作为结束符,把在空白后的内容都去掉 例如:用next()方法输入Hello world,只会输出Hello
  4. next()方法不能得到带空格的字符串
package com.ezra.flow;

import java.util.Scanner;

public class ScannerDemo01 {
    public static void main(String[] args) {
        //创建一个扫描器对象,用于接收键盘数据
        //System.in 输入
        Scanner scanner = new Scanner(System.in);
        System.out.println("要输出的内容:");

        //判断用户有没有输入字符串
        if (scanner.hasNext()){
            //用next方法接收
            //next()方法不能得到带空格的字符串
            String str = scanner.next();
            System.out.println("输出的内容为:"+str);

        //凡是属于IO流的类,如果不关闭就会一直占用资源(要养成好习惯,用完就关掉)
        //IO流=输入输出流
        scanner.close();
        }
    }
}

nextLine()方法

  1. 以Enter作为结束符,nextLine()方法返回的是输入回车之前的所有字符
  2. nextLine()方法可以获得空白
package com.ezra.flow;

import java.util.Scanner;

public class ScannerDemo02 {
    public static void main(String[] args) {
        //创建一个接收器,从键盘接收用户输入的数据
        Scanner scanner = new Scanner(System.in);
        System.out.println("要输出的文字:");

        //判断用户有没有输入字符串
        if (scanner.hasNextLine()){
            //用nextLine方法接收
            String str = scanner.nextLine();
            System.out.println("输出的文字:"+str);

        scanner.close();
        }
    }
}

求多个数的和与平均数

package com.ezra.flow;
/*
求和以及平均数
可以输入多个数字,求出他们的和与平均数
每输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果
 */
import java.util.Scanner;

public class ScannerDemo04 {
    public static void main(String[] args) {
        //创建一个接收器,接收键盘的数据
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入数据:");

        double sum = 0;
        int x =0;

        //添加whlie循环语句
        while (scanner.hasNextDouble()){
            double v = scanner.nextDouble();
            x++;    //每经过一次循环,x自增
            sum = sum + v; //计算每一次输入数据的和
            System.out.println("您已经输入了"+x+"个数");
        }
        System.out.println("当前输入了"+x+"个数");
        System.out.println("和为"+sum+",平均值为"+(sum/x));

        scanner.close();

    }
}

猜你喜欢

转载自blog.csdn.net/weixin_44049033/article/details/107662433