Scanner类是什么
在Java中,Scanner
是一个非常有用的类,用于从各种输入源(如键盘、文件或其他输入流)读取数据。它属于 java.util
包,并且提供了简单的方法来解析基本类型和字符串。本文将介绍如何用Scanner从控制台获取输入
导入并创建
在Java中使用Scanner
类,首先需要导入java.util
包。
import java.util.Scanner;
要从控制台
获取用户输入,可以创建一个Scanner
对象,并将System.in
作为参数传入,起名为sc
。
Scanner sc = new Scanner(System.in);
读取一个数
- next[数据类型]():读取下一个整数
int num1 = sc.nextInt();
long num2 = sc.nextLong();
float f1 = sc.nextFloat();
double f2 = sc.nextDouble();
读取字符串
读取一行
- nextLine():读取读取下一行字符串
String str = sc.nextLine();
读取直到空白字符为止
- next(): 读取下一个字符串(以空白字符为分隔符)。
以下代码可以用来获取3个由空格分隔的字符串
for(int i=0;i<3;i++){
String str = sc.next();
System.out.println(str);
}
输入
dad mom son
输出
dad
mom
son
读取多个数直到^z
- hasNext():可以检查是否有下一个输入项
- hasNextLine():可以检查是否有下一行输入
- hasNext[数据类型]():检查下一个输入项是否可以解析为特定类型如hasNextInt(),hasNextDouble()
while(sc.hasNext()){
int num = sc.nextInt();
System.out.println(num);
}
读取一个字符
要在Java中实现输入一个字符并输出,可以使用 Scanner 类中的nextLine()方法来读取用户输入的一行,然后使用 charAt 方法从输入的字符串中提取第一个字符。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
char character = input.charAt(0);
System.out.println(character);
scanner.close();
}
}