next()与nextLine()区别

    技术2022-07-14  70

    next()与nextLine()区别

    两种接收方式

    第一种

    import java.util.Scanner; public class Demo01 { public static void main(String[] args) { //创建一个扫描器对象,用于按收健盘数据 Scanner sc = new Scanner(System.in); System.out.println("使用next方式接收"); //为断用户有没有输入字符串 if (sc.hasNext()) { //使用next方式接收 String str = sc.next(); System.out.println("输出的内容为:" + str); } //凡是属于IO流的类如果不关闭会一直占用资源. 要养成好习惯用完就关掉 sc.close(); } } 使用next方式接收 hello world 输出的内容为:hello

    第二种

    import java.util.Scanner; public class Demo02 { public static void main(String[] args) { //创建一个扫描器对象,用于按收健盘数据 Scanner sc = new Scanner(System.in); System.out.println("使用nextLine方式接收"); //为断用户有没有输入字符串 if (sc.hasNextLine()) { //使用nextLine方式接收 String str = sc.nextLine(); System.out.println("输出的内容为:" + str); } //凡是属于IO流的类如果不关闭会一直占用资源. 要养成好习惯用完就关掉 sc.close(); } } 使用nextLine方式接收 hello world 输出的内容为:hello world

    区别

    next()

    一定要读取到有效字符后才可以结束输入。对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。next()不能得到带有空格的字符串。

    nextLine()

    以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。可以获得空白。
    Processed: 0.011, SQL: 9