2015-09-19 39 views
2

我瞭解java.io中的其他Reader子類,但我不能想到在我已經有Stringchar[]可用數據的情況下需要CharArrayReaderStringReader的用例。CharArrayReader和StringReader有什麼用?

是否因爲兼容性?將「String」或「char[]」「飼餵」爲期望Reader作爲參數的東西?

回答

3

我不會稱之爲兼容性,它的靈活性

你是對的,一些處理基於字符的數據庫提供了一種接受Reader的方法。所以該庫的用戶可以選擇任何機制來提供該庫。

如果硬盤上有文件,請使用FileReader。如果您有任意InputStream,請使用InputStreamReader(使用適當的編碼)。如果您的代碼中已有簡單的String,請使用StringReader。等等...

+0

我不會稱之爲*靈活性*非常*抽象*(這與*封裝*緊密相關)。 – user2864740

1

除了已經回答的問題之外,當您爲期望讀者的方法編寫單元測試時,這些類非常方便。

相關問題