Java中next()和nextLine()的区别

它们的作用都是读取从控制台输入的字符。

区别

  • next() :从控制台输入的第一个有效字符开始读取,输入字符(串)前面和后面的Tab、空格、回车都不读取
  • nextLine() :读取输入的全部字符,以回车作为结尾(不读取回车),字符(串)中的Tab、空格都会被读取。

注意next()和nextLine()的连用问题

由于next()不会读取字符(串)后面的Tab、空格、回车,所以,如果nextLine()在next()之后,则next()没有读取的Tab、空格、回车将由nextLine()读取。

如果只想读取输入的字符(串)而不读取Tab或者空格或者回车,则可采用next()自身的连用。

测试

案例1:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        String s1, s2;
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入第一个字符串:");
        s1 = scanner.next();
        System.out.println("请输入第二个字符串:");
        s2 = scanner.nextLine();
        System.out.println("输入的字符串是:" + s1 + s2);
    }
}

运行结果:

请输入第一个字符串:
  		hello
请输入第二个字符串:
输入的字符串是:hello

案例2:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        String s1, s2;
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入第一个字符串:");
        s1 = scanner.next();
        System.out.println("请输入第二个字符串:");
        s2 = scanner.next();
        System.out.println("输入的字符串是:" + s1 + s2);
    }
}

运行结果:

请输入第一个字符串:
    hello   
请输入第二个字符串:
   world   
输入的字符串是:helloworld
posted @ 2019-10-09 16:21  Youpeng  阅读(627)  评论(0编辑  收藏  举报