【Java SE】七、用户输入
在 Java 当中,我们可以通过 导入Scanner
类来获取用户的输入。
Scanner s = new Scanner(System.in);
通过 Scanner
类的 next()
与 nextLine()
方法获取输入的字符串,在读取前我们一般需要使用 hasNext()
和 hasNextLine()
判断是否还有输入的数据。
import java.util.Scanner; // 使用前记得导入
public class Demo1 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
if(input.hasNext()) // 判断是否还有输入的数据
{
String str = input.next(); // String str = input.nextLine();
System.out.println("输入的内容为" + str);
}
input.close(); // 在使用完后记得关闭
}
}
两者的主要区别在于:
next()
:要读取到有效字符后才可以结束输入,而对输入有效字符之前遇到的空白,它会自动将其去掉,只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。该方法不能得到带有空格的字符串。
nextLine()
:以回车键为结束符,其返回的是输入回车之前的所有字符,因此该方法可以获得空白字符。
同理,hasNext()
和 hasNextLine()
也是一样。
除了以上两种基本的字符串判断方法,Scanner
还提供了其他类型数据的判断方法,如 hasNextInt()
、hasNextFloat()
等。