📅  最后修改于: 2023-12-03 15:01:57.378000             🧑  作者: Mango
Java中的 StringReader
类提供了用于读取字符串内容的方法。其中之一是 read(char[], int, int)
方法,该方法用于从字符串中读取字符到指定的字符数组中。本文将介绍该方法的语法、参数、返回值以及示例。
以下是 StringReader
类的 read(char[], int, int)
方法的语法:
public int read(char[] cbuf, int offset, int length) throws IOException
read(char[], int, int)
方法接受以下参数:
cbuf
:用于存储读取字符的字符数组。offset
:读取字符存储开始的偏移量。length
:读取的字符数。read(char[], int, int)
方法返回读取的字符数,如果已到达流的末尾,则返回-1。
下面是一个示例,展示如何使用 StringReader
的 read(char[], int, int)
方法从字符串中读取字符到字符数组中:
import java.io.IOException;
import java.io.StringReader;
public class StringReaderExample {
public static void main(String[] args) {
String input = "Hello World";
char[] buffer = new char[5];
try (StringReader reader = new StringReader(input)) {
int numCharsRead;
while ((numCharsRead = reader.read(buffer, 0, buffer.length)) != -1) {
System.out.println("Read " + numCharsRead + " characters: ");
System.out.println(new String(buffer, 0, numCharsRead));
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
输出:
Read 5 characters:
Hello
Read 5 characters:
Worl
Read 1 characters:
d
在上述示例中,我们首先创建一个包含字符串 "Hello World" 的 StringReader
对象。然后,我们创建一个长度为5的字符数组作为缓冲区。通过循环迭代读取字符,每次读取的字符数被存储在 numCharsRead
变量中。我们将读取的字符数组转换为字符串并打印出来。当读取到末尾时,reader.read()
方法返回-1,循环结束。
注意,在示例中我们使用了Java 7中的 try-with-resources 语句来自动关闭 StringReader
,确保资源被正确释放。
以上就是关于 Java 中的 StringReader read(char[], int, int)
方法及示例的详细介绍。该方法可用于从字符串中读取指定数量的字符,方便进行字符处理操作。