• next()和nextLine()的区别


    1、next():一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符。所以 next() 不能得到带空格的字符串。

    使用 nextInt() 方法时,与 next() 方法类似,只是它的返回值是 int 类型的,依旧将空格看作是两个输入的数据的间隔。

    2、nextLine():是遇到回车符才结束,所以可以得到带空格的字符串。

    public class Test {
        public static void main(String args[]) {
            Scanner sc = new Scanner(System.in);
            System.out.println("使用next()方法,将空格作为间隔符。输入为:");
            while (sc.hasNext()) {
                System.out.print("输出为:");
                String n = sc.next();
                System.out.print(n);
            }
        }
    }
    

    public class Test {
        public static void main(String args[]) {
            Scanner sc = new Scanner(System.in);
            System.out.println("使用nextLine()方法,将空格作为间隔符。输入为:");
            while (sc.hasNext()) {
                System.out.print("输出为:");
                String n = sc.nextLine();
                System.out.print(n);
            }
        }
    }
    

    public class Test {
    	public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
    
            System.out.println("请输入字符串(next):");
            String str = input.next();
            System.out.println(str);
    
            System.out.println("请输入字符串(nextLine):");
            String str1 = input.nextLine();
            System.out.println(str1);
        }
    }
    

    如图所示,当我们输入javaweb spring springmvc(每个中间用空格分隔)并按回车后。调用input.next()方法时,会扫描输入的字符串,当扫描到第一个空格时将空格前面的javaweb输出并结束;调用input.nextLine()方法时,接着从javaweb后的空格开始扫描,一直到扫描到回车符停止,将回车符前的字符串输出(包括第一个空格)。

  • 相关阅读:
    twisted 初体验
    移动互联网实战--wifi定位和架构
    SpringCloud之Eureka集群
    com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server
    SpringCloud服务注册与服务发现之Eureka
    SpringCloud简介
    Java实时监控类库Metrics
    InfluxDB Java入门
    InfluxDB配置文件详解
    InfluxDB概念和基本操作
  • 原文地址:https://www.cnblogs.com/gyunf/p/14321112.html
Copyright © 2020-2023  润新知