鴻蒙OS RandomAccess

2022-06-30 15:20 更新

RandomAccess

public interface RandomAccess

List 實現(xiàn)使用的標記接口表明它們支持快速(通常是恒定時間)隨機訪問。此接口的主要目的是允許通用算法在應(yīng)用于隨機或順序訪問列表時改變其行為以提供良好的性能。

用于操作隨機訪問列表(例如 ArrayList)的最佳算法在應(yīng)用于順序訪問列表(例如 LinkedList)時會產(chǎn)生二次行為。鼓勵通用列表算法在應(yīng)用算法之前檢查給定列表是否是此接口的實例,如果將其應(yīng)用于順序訪問列表會提供較差的性能,并在必要時更改它們的行為以保證可接受的性能。

眾所周知,隨機訪問和順序訪問之間的區(qū)別通常是模糊的。例如,如果某些 List 實現(xiàn)變得很大,則提供漸近線性訪問時間,但在實踐中訪問時間是恒定的。這樣的 List 實現(xiàn)一般應(yīng)該實現(xiàn)這個接口。根據(jù)經(jīng)驗,如果對于類的典型實例,如果出現(xiàn)以下循環(huán),則 List 實現(xiàn)應(yīng)該實現(xiàn)此接口:

     for (int i=0, n=list.size(); i < n; i++)
         list.get(i);

運行速度比這個循環(huán)快:

     for (Iterator i=list.iterator(); i.hasNext(); )
         i.next();

此接口是 Java 集合框架的成員。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號