Java全栈JavaSE:7.用户交互scanner

Posted new nm个对象

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java全栈JavaSE:7.用户交互scanner相关的知识,希望对你有一定的参考价值。

声明:本节内容为本人观看“遇见狂神说”Java教学视频后总结,仅供学习参考。

1.什么是scanner


2.scanner基本使用

使用next方式:

package com.oy.scanner;

import java.util.Scanner;

public class demo1 {
    public static void main(String[] args) {
        // 创建一个扫描器,用于接收键盘数据
        Scanner scanner = new Scanner(System.in);

        System.out.println("使用next方式接收:");
        //判断用户是否输入字符串
        if (scanner.hasNext()){
            String str = scanner.next(); //获取用户的输入数据,并保存到变量str中
            System.out.println("输入的内容为:"+str);
        }
        //凡是IO流的类如果不关闭会一直占用资源
        scanner.close();
    }
}

结果如下:

使用next方式接收:
hello wlord
输入的内容为:hello

使用nextLine方式:

package com.oy.scanner;

import java.util.Scanner;

public class demo2 {
    public static void main(String[] args) {
        // 创建一个扫描器,用于接收键盘数据
        Scanner scanner = new Scanner(System.in);

        System.out.println("使用nextLine方式接收:");
        //判断用户是否输入字符串
        if (scanner.hasNextLine()){
            String str = scanner.nextLine(); //获取用户的输入数据,并保存到变量str中
            System.out.println("输入的内容为:"+str);
        }
        //凡是IO流的类如果不关闭会一直占用资源
        scanner.close();
    }
}

结果如下:

使用nextLine方式接收:
hello world
输入的内容为:hello world

3.scanner进阶使用

scanner还可以用来接收用户输入的指定数据,如:int,float等等。使用方式都差不多。这里以int举例。

package com.oy.scanner;

import java.util.Scanner;

public class demo3 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个整数:");
        if (scanner.hasNextInt()){
            int a = scanner.nextInt();
            System.out.println("输入的整数为:"+a);
        }
        scanner.close();
    }
}

结果如下:

请输入一个整数:
20
输入的整数为:20

注意:scanner还有许多方法,可以通过Alt+单击Scanner类进入Scanner源码来学习。

4.scanner练习实战

package com.oy.scanner;

import java.util.Scanner;

public class demo4 {
    public static void main(String[] args) {
        /**
         * 练习:循环输入整数,当输入非数字时作为结束。最终输出所有数字的和及平均数
         */

        int m = 0;
        int sum = 0;
        System.out.println("请输入:");
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextInt()){
            int x = scanner.nextInt();
            m = m + 1;
            sum = sum + x;
        }
        System.out.println("sum = "+sum);
        System.out.println("avg = "+(sum/m));
        scanner.close();
    }
}

运算结果如下:

请输入:
10
20
30
40
x
sum = 100
avg = 25

以上是关于Java全栈JavaSE:7.用户交互scanner的主要内容,如果未能解决你的问题,请参考以下文章

Java全栈JavaSE:2.数据库之Mysql下

Java全栈JavaSE:21.集合之Map

Java全栈JavaSE:9.Java数组详解

Java全栈JavaSE:5.基本运算符

Java全栈JavaSE:24.数据结构下

Java全栈JavaSE:4.数据库之JDBC下