簡體   English   中英

通過索引引用排序地圖上的java對象?

[英]referencing java objects on a sorted map by index?

我有一個有序的地圖,並希望通過它們的索引位置引用它的有序對象。 這可能嗎? 如何在保持排序的同時將有序映射轉換為數組列表,因此我可以通過索引(順序)檢索對象。 這是唯一的方法嗎?

理想情況下,我可以擁有這個結構,並且知道該結構中的對象的索引,並且可以通過說:

    Object nextObj = structure[4] //this structure is originally a sortedMap
//SortedMap<String, Object> sortedMap = new TreeMap<String, Object>();

我的問題是我首先要有一個有序的地圖。 有沒有一種已知的方法來做到這一點?

非常感謝您提出任何方法。

您可以通過執行從SortedMap檢索鍵值數組

Object[] objects = structure.entrySet().toArray();
Object nextObj = structure[4];

下面的代碼顯示了如何獲取對象的鍵和值

java.util.Map.Entry<K, V> entry = (java.util.Map.Entry<K, V>) structure[4];
K key = entry.getKey();
V value = entry.getValue();

編輯:獲取對象值和鍵的示例

我會使用以下結構

List<Pair<String,Object>> mylist;

總是在自定義Comparator的幫助下插入/搜索對象,並像C ++一樣使用一組像lower_bound / upper_bound / equal_bound這樣的方法(例如, 這里參見java實現)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM