java中scanner的使用

本文详细介绍了Java中Scanner类的next()和nextLine()方法的区别,以及如何利用Scanner进行整数和小数的数据类型判断。通过示例代码展示了如何接收用户输入并进行和、平均数的计算,强调了正确关闭IO流的重要性。

Scanner使用next接收

package Base.scanner;

import java.util.Scanner;

public class Scanner1 {
    public static void main(String[] args) {
        Scanner scanner =new Scanner(System.in);
        System.out.println("使用next方式接收:");

        //判断用户有无输入字符串
        if (scanner.hasNext()){
            //使用next方式接收
            String str=scanner.next();
            System.out.println("输出内容为:"+str);
        }
        //凡是使用io流的类,使用完要关闭,否则会占用资源
        scanner.close();
    }
}

运行后,键盘输入:hello world,输出内容为:hello
在这里插入图片描述

Scanner使用nextline接收

package Base.scanner;

import java.util.Scanner;

public class Scanner1 {
    public static void main(String[] args) {
        //从键盘接收数据
        Scanner scanner =new Scanner(System.in);

        System.out.println("使用nextLine方式接收:");

        //判断用户是否还有输入
        if (scanner.hasNextLine()){
            //使用nextLine方式接收
            String str=scanner.nextLine();
            System.out.println("输出内容为:"+str);
        }
        //凡是使用io流的类,使用完要关闭,否则会占用资源
        scanner.close();
    }
}

结果:会完整输出空格后的内容
在这里插入图片描述

两种输入方式区别

在这里插入图片描述


Scanner的进阶使用:判断数据的类型

package Base.scanner;
import java.util.Scanner;

public class Scanner2 {
    public static void main(String[] args) {
        Scanner scanner =new Scanner(System.in);

        //从键盘接收数据
        int i=0;
        float f=0.0f;
        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();
    }
}

运行结果:
在这里插入图片描述
在这里插入图片描述

Scanner实现和、平均数的计算:

package Base.scanner;

import java.util.Scanner;

public class Scanner3 {
    public static void main(String[] args) {
        Scanner scanner =new Scanner(System.in);

        //和
        double sum =0;
        int m=0;
        System.out.println("请输入数字:");
        //通过循环判断是否有输入,并对里面进行每次求和统计
        while (scanner.hasNextDouble()){
            double n = scanner.nextDouble();
            m++;//m=m+12
            sum+=n;
            System.out.println("你输入了第"+m+"个数字,当前sum="+sum);
        }
        System.out.println(m+"个数的和为:"+sum);
        System.out.println(m+"个数的平均值为:"+(sum/m));
        scanner.close();
    }

}

计算结果:
在这里插入图片描述

提示:这里可以添加要学的内容
例如:
1、 搭建 Java 开发环境
2、 掌握 Java 基本语法
3、 掌握条件语句
4、 掌握循环语句


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值