2012-10-09 56 views
0

如何InputStream,HashMap and ArrayList是在java內部實現的嗎?其實這個問題在n次面試中被問到我的一個朋友。InputStream,HashMap和ArrayList的內部實現?

+7

這是你知道的開源嗎? http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/java/util/HashMap.java –

回答

3

HashMapArrayList是具體的實現,你可以很容易地找到它們的源代碼。但是這個問題的原因是不同的。你的朋友想知道實現背後的原理是什麼,數據結構和算法是什麼。它們如何影響大O符號?

關於InputStream的問題沒有多大意義,它是一個抽象類。它有幾種基於不同後端的實現。

+0

謝謝...但你能給我一個清淡的想法嗎?即數據結構和實現 – Maverick

+1

@Maverick:'ArrayList'包裝數組,'H​​ashMap'基於散列表。有關更多信息,請參閱來源 –

+0

相關集合,我同意你的意見,關於輸入或其他IO相關的實現我認爲主要問題是字節逐字節閱讀到字節數組讀取之間的差異,就像IO vs NIO –