Scanner详解

一.  通用解释:

1. 在使用Scanner的时候需要先创建 Scanner 对象

Scanner sc = new Scanner(System.in);

2. 一定要读取到有效字符程序才会结束!

二.  .next(); 解释

import java.util.Scanner;

public class Laugh {
    public static void main(String[] args) {
        //创建新的对象,用于接收用户键盘输入使用 开始认为是 “开启” 用户输入
        Scanner sc = new Scanner(System.in);
        System.out.println("我是”.next“方式!");
        System.out.print("请输入:");
        //判断用户有没有输入字符串  可以不写🤣  判断刚刚开始没必要
        if(sc.hasNext()){
            //接收用户键盘输入
            //1.1  重点:这个.next有一个特点,用户如歌在输入时有空格,则只会识别第一个空格以前的输入,
            String str = sc.next();
            System.out.println("你输入的是:" + str);
        }
        //凡是有交互的程序都会牵扯IO,会占用内存,我们用完后需要清除掉,以便于释放内存;IO的话  后面会说到,这里简单说一下,咱们往U盘里面放数据就是例子,把电脑的文件转移到U盘里面,这就是一个IO流
        sc.close();
    }
}

输出结果:

解释:我们通过Scanner输入的是 ” Hello Laugh, today is another day full of hope.“,
我是这样输入的,但是输出的只有 ”Hello“;

1. next() 对输入有效字符之前遇到的空格,会自动不计
2. next() 只有输入有效字符后碰见的空格会被默认为结束
3. next() 不能拿到带有空格的字符串"遇到空格会默认结束读取"

三.  .nextLine();解释

import java.util.Scanner;

public class Laugh1 {
    public static void main(String[] args) {
        //创建新的对象,用于接收用户键盘输入使用 开始认为是 “开启” 用户输入
        Scanner sc = new Scanner(System.in);
        System.out.println("我是”.nextLine“方式!");
        System.out.print("请输入:");//接收用户键盘输入
        //1.1  重点:这个.nextLine有一个特点,用户如果在输入时有空格也没事,nextLine会识别用户输入的全部字符串
        String str = sc.nextLine();
        System.out.println("你输入的是:" + str);
        //凡是有交互的程序都会牵扯IO,会占用内存,我们用完后需要清除掉,以便于释放内存;IO的话  后面会说到,这里简单说一下,咱们往U盘里面放数据就是例子,把电脑的文件转移到U盘里面,这就是一个IO流
        sc.close();
    }
}

输出结果:

解释:我们通过Scanner输入的是 ” Hello Laugh, today is another day full of hope.“,
我是这样输入的,输出的是 ” Hello Laugh, today is another day full of hope.“;

1. .nextLine() 它默认以 ”回车“ 为结束输入; //回车键盘标识  "Enter";

2. .nextLine()它会读取到用户输入的全部包括空格符号

四.  补充:里面有很多控制输入类型!  如果要控制输入类型的话,最好加上我上面 .next() 里面的判断{sc.hasNext()},上面已标红!上面的"品红色"根据下图选择的类型变动就好!

posted @ 2021-10-13 10:19  Laugh"  阅读(813)  评论(5编辑  收藏  举报