How to take Character Input in Java using BufferedReader Class

2025年4月14日 | 阅读 3 分钟

在 Java 中,Scanner 类用于从用户那里获取字符输入。Scanner 类并非获取用户字符输入的唯一解决方案。 BufferedReader 类Scanner 类 的替代方案,用于从用户那里获取字符输入。现在让我们开始了解如何在 Java 中使用 BufferedReader 获取字符输入

以下是使用 BufferedReader 获取字符输入的步骤:

How to take Character Input in Java using BufferedReader Class
  1. 第一步,我们需要通过使用 InputStreamReader 来创建一个 BufferedReader 类的实例。InputStreamReader 是一个充当字节流和字符流之间桥梁的类。使用 InputStreamReader 的原因是解码字节为字符。
  2. 我们将使用 BufferedReader 类的 read() 方法从给定的 BufferedReader 中读取字符,并将其类型转换为 char。
  3. 我们将 read() 方法的返回值存储在字符类型变量中。read() 方法返回此方法读取的字符。当缓冲流结束且没有字符可读时,read() 方法返回 -1。
  4. 最后,我们将使用 read() 方法读取的字符数据打印到屏幕上。

让我们看一些例子来理解 BufferedReader 类是如何用于在 Java 中读取字符数据的。

我们将举两个例子,即 BufferedReaderExampleBufferedReaderExample2。在第一个例子中,我们将直接使用 BufferedReader 类读取字符数据并将其打印到屏幕上。在第二个例子中,我们将使用 BufferedReader 类从用户那里获取字符串并对用户输入的字符串执行一些操作。

BufferedReaderExample.java

输出

How to take Character Input in Java using BufferedReader Class

BufferedReader 类也可用于从用户那里获取字符串。为此,我们将使用 BufferedReader 类的 readLine() 方法。让我们通过另一个 BufferedReader 的例子来理解它。我们将通过 BufferedReader 类从用户那里获取三角形的底边值和高度值作为字符串,来计算三角形的面积。然后,我们将字符串数据通过解析字符串数据转换为 double,然后使用公式 (base*height)/2 计算三角形的面积。

BufferedReaderExample2.java

输出

How to take Character Input in Java using BufferedReader Class