zoukankan      html  css  js  c++  java
  • 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后的空格开始扫描,一直到扫描到回车符停止,将回车符前的字符串输出(包括第一个空格)。

  • 相关阅读:
    阿里巴巴开源故障注入工具_chaosblade
    一步一步解决centos6.5配置无线网卡的问题
    python自动化测试三部曲之request+django实现接口测试
    python自动化测试三部曲之unittest框架
    python子类如何继承父类的实例变量?
    tp5.0 的 系统变量
    tp5.1 相同控制器不同方法session无法取出的问题
    php 常用自定义函数
    tp5.1 配置多个项目共用同一个核心库
    git LF 和 CRLF换行的问题
  • 原文地址:https://www.cnblogs.com/gyunf/p/14321112.html
Copyright © 2011-2022 走看看