Skip to main content
 首页 » 编程设计

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

2022年07月27日107exmyth

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

区别

  • 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 

本文参考链接:https://www.cnblogs.com/youpeng/p/11642558.html