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()) {
String str = sc.next();
System.out.println("输出的内容为:" + str);
}
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()) {
String str = sc.nextLine();
System.out.println("输出的内容为:" + str);
}
sc.close();
}
}
使用nextLine方式接收
hello world
输出的内容为:hello world
区别
next()
一定要读取到有效字符后才可以结束输入。对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。next()不能得到带有空格的字符串。
nextLine()
以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。可以获得空白。
转载请注明原文地址:https://ipadbbs.8miu.com/read-25490.html