Junior — Middle
Мо метавонед шарҳи кунед, ки LinkedHashMap дар Java чист ва кадом хусусиятҳоро дорад?
sobes.tech AI
Ҷавоб аз AI
LinkedHashMap дар Java — инҷо иҷрои интерфейси Map мебошад, ки тартиби ворид кардани элементҳоро нигоҳ медорад.
Хусусиятҳои LinkedHashMap:
- Элементҳо дар шакли ҷуфтҳои калид-арзиш нигоҳ дошта мешаванд, ҳамон тавре ки дар HashMap.
- Баръакс аз HashMap, LinkedHashMap рӯйхати пайвастшудаи элементҳоро дастгирӣ мекунад, ки имкон медиҳад, ки дар тартиби илова кардан такрор кардан.
- Иҷозат медиҳад истифодаи тартиби дастрасӣ (access order), ки барои татбиқи кешҳо бо сиёсати LRU (камтар истифодашуда) муфид аст.
- Вақти дастрасӣ, ворид кардан ва тоза кардан тақрибан O(1) аст, ҳамон тавре ки дар HashMap.
Маслиҳат барои истифода:
import java.util.LinkedHashMap;
public class Example {
public static void main(String[] args) {
LinkedHashMap<Integer, String> map = new LinkedHashMap<>();
map.put(1, "як");
map.put(2, "ду");
map.put(3, "се");
// Такрор дар тартиби илова кардан
for (Integer key : map.keySet()) {
System.out.println(key + " -> " + map.get(key));
}
}
}
Натиҷа дар тартиби 1, 2, 3 хоҳад буд, ки дар HashMap одатан кафолат дода намешавад.