Sobes.tech
Middle

Чаро коллексияи Map дар hierarchy-и коллексияҳо ҷойгоҳи махсус дорад?

sobes.tech AI

Ҷавоб аз AI

Map дар колексия дар маънои анъанавӣ нест. Collection дар Java гурӯҳи объектҳо (элементҳо)-ро намояндагӣ мекунад. Аммо, Map ҷуфтҳои "калид-арзиш"-ро нигоҳ медорад, ки дар он ҳар як калид беназир аст. Ин онро аз интерфейсҳое, ки аз Collection мерос мегиранд (мисол, List, Set, Queue), ки бо элементҳои алоҳида кор мекунанд, фарқ мекунад.

Иерархия чунин аст:

  • Iterable
    • Collection
      • List
      • Set
      • Queue
    • Map

Map дорои методҳои махсуси худ барои кор бо ҷуфтҳо:

  • put(K key, V value)
  • get(Object key)
  • remove(Object key)
  • containsKey(Object key)
  • containsValue(Object value)
  • keySet() - баргардонидани Set-и калидҳо
  • values() - баргардонидани Collection-и арзишҳо
  • entrySet() - баргардонидани Set-и ҷуфтҳои "калид-арзиш" (Map.Entry)

Маслиҳат барои истифода:

// Эҷоди HashMap
Map<String, Integer> studentScores = new HashMap<>();

// Илова кардани элементҳо
studentScores.put("Alice", 95);
studentScores.put("Bob", 88);
studentScores.put("Charlie", 95); // Арзиш метавонад такрор шавад, калид не

// Гирифтани арзиш бо калид
int score = studentScores.get("Alice"); // 95

Бинобар ин, Map дар параллел бо Collection дар иерархияи Iterable ҷойгир аст, зеро он маълумотҳоро бо роҳи дигар, асосёфта ба ҷуфтҳои "калид-арзиш" ташкил медиҳад, ва на дар гурӯҳи элементҳои алоҳида.