Java Scanner用法简介
Java中的Scanner类是一个方便的工具,它可以帮助我们从输入流中获取用户输入或者读取文件等输入源的内容。在本文中,我们将会介绍Java Scanner类的基本用法以及几个相关的概念。
Scanner类的基本用法
我们需要创建一个Scanner对象来读取输入内容。Scanner对象可以被创建到各种输入数据源,例如:标准输入、文件、字符串等。以下是创建一个针对标准输入的Scanner对象的方法:
```
Scanner scanner = new Scanner(System.in);
现在我们已经得到了一个Scanner对象,我们可以使用它的各种方法来读取输入。以下是Scanner对象的一些基本方法:
- next() 读取输入的下一个字符串,以空格为分隔符。
- nextLine() 读取输入的一行字符串,包括行末的换行符。
- nextInt() 读取输入的下一个整数。
- nextDouble() 读取输入的下一个双精度浮点数。
这些方法的使用非常简单。要读取下一个字符串,我们可以像这样:
String str = scanner.next();
为了避免异常,我们可以使用hasNext()方法来检查是否还有待读取的输入。
Scanner对象的关闭
在使用Scanner类时,记得及时关闭Scanner对象。可以通过调用Scanner的close()方法来关闭该对象:
scanner.close();
这样可以避免资源泄漏和错误。
文件读取
除了从标准输入中读取输入外,Scanner还可以被用来读取文件。以下是一个从文件中读取字符串的例子:
Scanner scanner = new Scanner(new File("input.txt"));
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
System.out.println(line);
}
在上面的例子中,我们创建了一个Scanner对象来读取名为input.txt的文件,并用while循环读取文件中的每一行。我们就可以遍历整个文件并逐行读取其中的内容。
字符串读取
除了从标准输入和文件中读取输入,Scanner类还可以被用来从字符串中读取输入。以下是一个从字符串中读取双精度浮点数的例子:
Scanner scanner = new Scanner("3.14159");
double pi = scanner.nextDouble();
System.out.println(pi);
在上面的例子中,我们创建了一个Scanner对象来读取字符串“3.14159”中的浮点数,并将其存储在pi变量中。我们打印出pi的值。
Scanner对象相关概念
在使用Scanner类时,有一些相关的概念需要了解。以下是几个相关的概念:
- 分隔符:Scanner类默认使用空格作为分隔符,但是你可以使用delimiter()方法来改变分隔符。例如:scanner.useDelimiter(“,”)可以将逗号作为分隔符。
- 定界符:Scanner类默认使用行末作为定界符,但是你可以使用useLocale()方法来改变定界符。例如:scanner.useLocale(Locale.US)可以将美国地区的定界符(点号)用于读取双精度浮点数。
- Radix:Scanner类默认读取整数时采用十进制,但是你可以使用useRadix()方法来改变进制数。例如:scanner.useRadix(2)可以读取二进制数。
在本文中,我们介绍了Scanner类的基本用法以及其相关概念。Scanner类可以被用来读取标准输入、文件和字符串等输入源的内容。我们可以使用Scanner类的各种方法对输入内容进行处理,并且可以通过设置分隔符、定界符和进制等属性来定制化Scanner的行为。记得在使用完毕后关闭Scanner对象,以避免资源泄漏。
网友留言(0)