CharArrayReader和StringReader有什么用途?

3
我了解java.io中的其他Reader子类,但我无法想到需要使用CharArrayReader或StringReader的用例,因为我已经有可用的String或char[]数据。
这是因为兼容性吗?为了“提供”一个带有参数的Reader的String或char[]?
2个回答

3

我不会称之为“兼容性”,而是“灵活性”。

你说得对,一些处理基于字符的数据的库提供了接受Reader的方法。因此,该库的用户可以选择任何机制来提供给该库。

如果你有一个硬盘上的文件,使用FileReader。如果你有任意的InputStream,使用InputStreamReader(带有适当的编码)。如果你已经在代码中有一个简单的String,则使用StringReader。等等...


我不会说它是“灵活性”,更确切地说应该是“抽象化”(这与“封装”密切相关)。 - user2864740

1
除了已经回答的内容之外,当您为期望读取器的方法编写单元测试时,这些类非常方便。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接