Java中的Scanner类函数的介绍及应用
Scanner类是Java提供的一个用于读取用户输入的类,它位于java.util包中。Scanner类提供了多个构造方法和一系列的方法,用于处理不同类型的输入。
Scanner类的构造方法:
1. Scanner(File source):使用指定的文件创建一个Scanner对象,用于读取文件的内容。
2. Scanner(InputStream source):使用指定的输入流创建一个Scanner对象,用于从输入流读取数据。
3. Scanner(String source):使用指定的字符串创建一个Scanner对象,用于读取字符串的内容。
4. Scanner(Readable source):使用指定的Readable对象创建一个Scanner对象,Readable是一个接口,可以通过实现它来创建自定义的可以读取的对象。
Scanner类的常用方法:
1. next():用于读取一个单词(以空格作为分隔符),返回一个字符串。
2. nextLine():用于读取一行字符串,返回一个字符串。
3. nextInt():用于读取一个整数,返回一个整数。
4. nextDouble():用于读取一个双精度数,返回一个双精度数。
5. hasNext():判断是否还有下一个元素,返回一个布尔值。
6. close():关闭Scanner对象。
Scanner类的应用举例:
1. 从键盘读取用户输入的字符串:
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = scanner.next();
System.out.println("你输入的字符串是:" + str);
scanner.close();
2. 从文件中读取整数并计算它们的和:
try {
File file = new File("input.txt");
Scanner scanner = new Scanner(file);
int sum = 0;
while (scanner.hasNextInt()) {
int num = scanner.nextInt();
sum += num;
}
System.out.println("文件中所有整数的和为:" + sum);
scanner.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
3. 从字符串中解析数字并计算它们的平均值:
String str = "1 2 3 4 5";
Scanner scanner = new Scanner(str);
int sum = 0;
int count = 0;
while (scanner.hasNextInt()) {
int num = scanner.nextInt();
sum += num;
count++;
}
double average = (double)sum / count;
System.out.println("平均值为:" + average);
scanner.close();
总结来说,Scanner类提供了一种方便的方式来读取用户输入,它可以从多种源(如键盘、文件、字符串等)中读取不同类型的数据。灵活运用Scanner类,可以实现很多有趣的功能,例如计算输入的数字的和、平均值等。但注意在使用完Scanner对象后要及时关闭,以释放资源。
