隨機訪問標記接口
回答
它沒有。
它告訴我們,實施支持快速隨機訪問。
這就是標記接口的目的。它標記的一個實現。
引述文檔使用List實現以表明其支持快速(通常是固定時間)隨機訪問
標記接口。該接口的主要目的是允許通用算法改變其行爲,以便在應用於隨機或順序訪問列表時提供良好的性能。
我的問題是它在內部正在做什麼來更快地檢索值。 –
它標誌着其可隨機訪問的列表中的實施方式。
這樣一個呼叫者可以隨機訪問數據,如果這是有效的,或者如果它是不使用的另一種手段。
例如在AbstractList中,您有一個可以針對RandomAccess進行優化的實現。
public List<E> subList(int fromIndex, int toIndex) {
return (this instanceof RandomAccess ?
new RandomAccessSubList<>(this, fromIndex, toIndex) :
new SubList<>(this, fromIndex, toIndex));
}
什麼算法JVM實現更快的訪問?
的重要方法是get(int)
這就需要將O(1)
public E get(int index) {
rangeCheck(index);
return elementData(index);
}
電話
E elementData(int index) {
return (E) elementData[index];
}
,你可以看到它只是查找索引在數組中,因此O(1)
我的問題是「JVM實現哪種算法以實現更快的訪問?」 –
@HimanshuAwasthi標記爲「RandomAccess」的get(int)需要爲'O(1)' –
@HimanshuAwasthi你可能會想象它更加重要。對於'ArrayList',它通過索引查找一個數組,而不僅僅是這個。看到我更新的答案。 –
- 1. 訂單訪問ADODB記錄集隨機
- 2. 在訪問找到一個隨機記錄(真隨機)
- 3. GridFS隨機訪問
- 4. 隨機訪問DocumentFile
- 5. OpenMesh隨機訪問
- 6. 標記接口
- 7. 序言:隨機標記
- 8. 連接記錄隨機
- 9. Java隨機訪問地圖
- 10. 隨機訪問gzip文件?
- 11. REDIS:隨機訪問列表
- 12. 隨機訪問HashMap鍵
- 13. 隨機訪問gzip流
- 14. 隨機訪問和BinaryWriter?
- 15. 訪問隨機對象AS3
- 16. 隨機訪問文件
- 17. 從隨機類訪問UIViewController
- 18. 在隨機訪問文件問題中創建新記錄
- 19. wordpress隨機標籤問題
- 20. 標記註釋VS標記接口
- 21. 隨機訪問指定的記錄文件
- 22. 如何從我的隨機訪問文件中刪除記錄?
- 23. 如何從訪問表中選擇700條隨機記錄?
- 24. 查詢從MS訪問檢索隨機記錄
- 25. 基於字段計數訪問每條記錄的隨機數
- 26. 隨機訪問種子3D白噪聲隨機發生器
- 27. 隨機數腳本訪問生產非隨機數VBA
- 28. 訪問C中隨機目錄中的隨機文件#
- 29. 如何隨機使用接口方法?
- 30. 矩形範圍內的隨機標記?
沒有任何來自Google搜索的鏈接_「java random access marker interface」_提供所需的信息? –
我認爲他只是對標記界面的目的感到困惑。 – Thihara
@Thihara「在數組列表中快速執行... [make]檢索操作」。聽起來他想知道爲什麼它讓事情變得更快。 –