Scanner类:

next() :
nextLine() :
nextInt():
三种方法简单使用

next()使用

package com.scanner;

import java.util.Scanner;//Scanner包

public class Demo1Scanner {
    public static void main(String[] args) {
       Scanner sc=new Scanner(System.in);//先创建创建Scanner对象、
        System.out.println("请输入");//给输入指定一个提示语句
        String s= sc.next();//sc.next返回值是String类型,所以用String值接受即可
        System.out.println(s);//打印输出s
    }
}

nextLine() 使用

package com.scanner;

import java.util.Scanner;//Scanner包

public class Demo1Scanner {
    public static void main(String[] args) {
       Scanner sc=new Scanner(System.in);//先创建创建Scanner对象、
        System.out.println("请输入");//给输入指定一个提示语句
        String s1= sc.nextLine();//sc.nextLine()返回值是String类型,所以也用String值接受即可
        System.out.println(s1);//打印输出s1
    }
}

nextLine() 与next()的区别

package com.scanner;

import java.util.Scanner;//Scanner包

public class Demo1Scanner {
    public static void main(String[] args) {
       Scanner sc=new Scanner(System.in);//先创建创建Scanner对象、
        System.out.println("请输入");//给输入指定一个提示语句
        String s1= sc.next();//sc.next()返回值是String类型,用String值接受即可
        System.out.println("请再次输入");//再给个录取语句提示
        String s2 = sc.next();//返回值String接收
        System.out.println(s1);//打印输出s1
        System.out.println(s2);//然后打印输出s2
        /**
         * 当执行时候如第一次输入abc以后回车
         * 第二次输入一个别的字符串比如大写的ABC
         * 语句就会把输入的两次结果答应出来
         *
         * 下面是执行过程
         * 请输入
         * abc
         * 请再次输入
         * ABC
         * abc
         * ABC
         *
         *
         * 可以在执行一次
         * 这次第一也是输入abc,但是这次在abc后面加个空格时再次输入其它字符
         * 当你回车以后会发现无法执行第二次输入语句
         * 程序会直接执行结束
         *
         * 下面是加空格执行语句
         * 请输入
         * abc ABC
         * 请再次输入
         * abc
         * ABC
         * 
         * 
         * **/
    }
}

解决next()加空格的问题

package com.scanner;

import java.util.Scanner;//Scanner包

public class Demo1Scanner {
    public static void main(String[] args) {
       Scanner sc=new Scanner(System.in);//先创建创建Scanner对象、
        System.out.println("请输入");//给输入指定一个提示语句
        String s1= sc.nextLine();//sc.nextLine()返回值是String类型,用String值接受即可
        System.out.println("请再次输入");//再给个录取语句提示
        String s2 = sc.nextLine();//返回值String接收
        System.out.println(s1);//打印输出s1
        System.out.println(s2);//然后打印输出s2
        /**
         * 这时候我们就可以使用sc.nextLine()
         * 使用sc.nextLine()可以完整解释输入字符包括空格
         * 
         * 下面是执行语句
         * 请输入
         * abc ABC
         * 请再次输入
         * 123
         * abc ABC
         * 123
         *
         * **/
    }
}

next()与nextLine()总结

当 next() : 遇到了空格, 就不再录入数据了结束标记: 空格, tab键

当nextLine() : 可以将数据完整的接收过来 结束标记: 回车换行符

nextLine()不是万能的

/*
           nextInt和nextLine方法配合使用的时候, nextLine方法就没有键盘录入的机会了
*/
        Scanner sc = new Scanner(System.in);//先创建创建Scanner对象、
        System.out.println("请输入");//先给个提示语
        int i = sc.nextInt();//这里使用是接收一个整数nextInt(),所以它的返回值是int类型
        System.out.println("请再次输入");//再给个提示语
        String s = sc.nextLine();//这里我们使用nextLine(),返回值是String类型
        System.out.println(i);//打印输入的int整数
        System.out.println(s);//打印输入的String字符串
        /**
         * 
         *当我们执行时候会发现输入一个int整数时候就无法执行接收第二个String类型的值
         * 程序直接结束
         * 
         * 下面是执行语句
         * 请输入
         * 123
         * 请再次输入
         * 123
         * **/

nextInt()解决方法

package com.scanner;

import java.util.Scanner;//Scanner包

public class Demo1Scanner {
    public static void main(String[] args) {
              /*
           nextInt和nextLine方法配合使用的时候, nextLine方法就没有键盘录入的机会了
*/
        Scanner sc = new Scanner(System.in);//先创建创建Scanner对象、
        System.out.println("请输入");//先给个提示语
        int i = sc.nextInt();//这里使用是接收一个整数nextInt(),所以它的返回值是int类型
        System.out.println("请再次输入");//再给个提示语
        String s = sc.next();//这里我们使用next(),返回值是String类型
        System.out.println(i);//打印输入的int整数
        System.out.println(s);//打印输入的String字符串
        /**
         *
         *解决方法很简单
         * 这个是时候我们就可以使用next()进行接收
         * next()可以在nextInt()执行后继续执行
         * 则nextLine()就没有继续录入的机会
         * 
         * 下面是执行结果
         * 请输入
         * 123
         * 请再次输入
         * java
         * 123
         * java
         *  **/


    }
}

使用建议

今后键盘录入数据的时候, 如果是字符串和整数一起接收, 建议使用next()方法接收字符串.如果是只有字符串数据录入则可以使用nextLine()方法接收字符串

看完如果对你有帮助,感谢点赞支持!(第一次写没什么经验以后会更努力)

JAVA中咋样从键盘输入字符串 java如何用键盘输入字符串_java

加油!

希望在学习路上的朋友共同努力!