Collections: List, Set, Map
Daraja: O'rta
List — tartibli, takror ruxsat (ArrayList tez o'qiydi, LinkedList tez qo'shadi). Set — takrorsiz to'plam (HashSet tartibsiz, TreeSet saralangan, LinkedHashSet kiritilish tartibida). Map — kalit→qiymat juftliklari. To'g'ri tuzilmani tanlash — samaradorlikning yarmi.
Tushuntirish
List — tartibli, takror ruxsat (ArrayList tez o'qiydi, LinkedList tez qo'shadi). Set — takrorsiz to'plam (HashSet tartibsiz, TreeSet saralangan, LinkedHashSet kiritilish tartibida). Map — kalit→qiymat juftliklari. To'g'ri tuzilmani tanlash — samaradorlikning yarmi.
Kod misoli
List<String> tillar = new ArrayList<>();
tillar.add("Java");
tillar.add("Go");
tillar.remove("Go");
Set<Integer> unikal = new HashSet<>(List.of(1, 2, 2, 3)); // [1,2,3]
Map<String, Integer> yosh = new HashMap<>();
yosh.put("Ali", 20);
yosh.putIfAbsent("Vali", 22);
yosh.merge("Ali", 1, Integer::sum); // 21
for (var e : yosh.entrySet()) {
System.out.println(e.getKey() + " = " + e.getValue());
}
Keng tarqalgan xatolar
- Sikl ichida list.remove() chaqirish — ConcurrentModificationException. Iterator yoki removeIf ishlat.
- List.of(...) o'zgarmas (immutable) — unga add qilsang UnsupportedOperationException.
Mashqlar
- Matndagi har bir so'z necha marta uchraganini Map bilan hisobla.
- Ikki ro'yxatning kesishmasini (umumiy elementlarini) top.
Teglar: collections, map, list