0
点赞
收藏
分享

微信扫一扫

next()、nextInt()和nextLine()的区别?

米小格儿 2022-01-08 阅读 31

三种方法的区别

next()、nextInt()和nextLine()的区别?

next()

next()接收字符串类型的数据,不接受特殊字符。
特殊字符:Tab,Enter等。

nextInt()

nextInt()只能接收int类型的数据。

nextLine()

nextLine()相对于next()可以接受特殊字符。

举例说明

例1

代码演示:

import java.util.Scanner;

public class Demo1 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入一个数字:");
        int i = sc.nextInt();
        System.out.println();
        System.out.print("请输入一个字符串:");
        String next = sc.next();//next()
        System.out.println(i);
        System.out.println(next);
    }
}

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

例2

代码演示:

import java.util.Scanner;

public class Demo1 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入一个数字:");
        int i = sc.nextInt();
        System.out.println();
        System.out.print("请输入一个字符串:");
        String next = sc.nextLine();//nextLine()
        System.out.println(i);
        System.out.println(next);
    }
}

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

分析例1与例2为什么不同?

由于next()接收字符串类型的数据,但不能接受特殊字符(Enter)。所以例1的代码输入完123之后,直接跳到输入下一个字符串;
由于nextLine()接受字符串类型数据的时候,可以接受特殊字符(Enter),所以例二接受完数字123之后,按下Enter,Enter被nextLine()接收了,所以不会第二个输入语句了。

举报

相关推荐

0 条评论