HashMap və TreeMap Arasındakı Fərq

Mündəricat:

HashMap və TreeMap Arasındakı Fərq
HashMap və TreeMap Arasındakı Fərq

Video: HashMap və TreeMap Arasındakı Fərq

Video: HashMap və TreeMap Arasındakı Fərq
Video: 22-Java da HashMap Ve TreeMap Kullanımı 2024, Noyabr
Anonim

Əsas Fərq – HashMap vs TreeMap

Proqramlaşdırmada məlumat toplamaq üçün müxtəlif mexanizmlər mövcuddur. Kolleksiyalar məlumatları saxlamaq üçün bir üsuldur. Java kimi proqramlaşdırma dilləri Kolleksiyalardan istifadə edir. Bu, bir sıra məlumat elementlərinin saxlanması və manipulyasiyası üçün siniflər və interfeysləri olan bir çərçivədir. Normal massivdə saxlamaq üçün müəyyən sayda element var. Bu massivlərin məhdudlaşdırılmasıdır. Bunun əvəzinə proqramçı kolleksiyalardan istifadə edə bilər. Kolleksiyalardan istifadə etməklə daxil etmək, silmək, çeşidləmək və axtarmaq kimi əməliyyatlar həyata keçirilə bilər. Java-da Xəritə interfeysi kolleksiyalara aiddir. Xəritə açar, dəyər cütlərində məlumatları təmsil etmək üçün istifadə olunur. Yalnız unikal açarlar var və hər birinin müvafiq dəyəri var. HashMap və TreeMap Map interfeysini həyata keçirən siniflərdir. HashMap, məlumat elementlərində xüsusi bir nizamı saxlamayan açar və dəyər cütlərini saxlamaq üçün istifadə olunan Xəritə əsaslı kolleksiya sinfidir. TreeMap, məlumat elementlərinin artan sırasını qoruyan açar və dəyər cütlərini saxlamaq üçün istifadə edilən Xəritə əsaslı kolleksiya sinfidir. HashMap və TreeMap arasındakı əsas fərq ondan ibarətdir ki, HashMap məlumat elementlərində xüsusi bir sıra saxlamır, TreeMap isə məlumat elementlərinin artan sırasını qoruyur.

HashMap nədir?

HashMap xəritə interfeysini həyata keçirən sinifdir. O, AbstractMap sinfini genişləndirir və Xəritə interfeysini həyata keçirir. HashMap açarı, dəyər cütlərini ehtiva edir. Hər bir element unikaldır. Açardan istifadə edərək HashMap-da elementləri tapmaq asandır. HashMap elanı aşağıdakı kimidir.

ictimai sinif HashMap genişləndirilir AbstractMap tətbiqləri Xəritə, Klonlana bilən, Seriyalaşdırıla bilər

K açarı, V isə həmin xüsusi açara uyğun gələn dəyərə istinad edir. Hər açar, dəyər cütü HashMap girişidir.

HashMap və TreeMap arasındakı fərq
HashMap və TreeMap arasındakı fərq

Şəkil 01: Xəritə interfeysi

HaspMap-ı başa düşmək üçün aşağıdakı ssenarini fərz edin. Əgər orada proqramçı bir sıra tələbə adlarını və müvafiq indeks nömrələrini saxlamaq istəsə, o, HashMap-dan istifadə edə bilər. Şagird adları indeks nömrələrini tapmaq üçün istifadə olunur. Buna görə də, tələbə adları açar, indeks nömrələri isə dəyərlərdir.

HashMap və TreeMap arasındakı fərq _Şəkil 02
HashMap və TreeMap arasındakı fərq _Şəkil 02

Şəkil 02: Java-dan istifadə edən HashMap Proqramı

Yuxarıdakı proqrama əsasən HashMap-ın obyekti yaradılır. Sonra proqramçı həmin obyektdən istifadə edərək elementlər əlavə edə bilər. Dəyərlər put metodundan istifadə etməklə daxil edilə bilər. Dəyərləri əldə etmək üçün proqramçı açarla get metodundan istifadə etməlidir. studentList.get("150") istifadə edərkən; o, Ann olan indeksə uyğun adı çap edəcək. Əgər proqramçı bütün dəyərləri əldə etmək istəyirsə, o zaman bütün açarları və dəyərləri çap etmək üçün Map. Entry-dən istifadə edə bilər. Çıxışı müşahidə edərkən, HashMap-ın müəyyən bir nizam saxlamadığını görmək olar. Elementləri daxil edilmiş qaydada çap etmir. Elementlər təsadüfi qaydada çap olunur.

TreeMap nədir?

The TreeMap Java-da Xəritə interfeysini həyata keçirən sinifdir. HashMap kimi, o, həm də açar, dəyər cütlərini, lakin artan qaydada saxlamaq üçün istifadə olunur. TreeMap NavigableMap-i həyata keçirir və NaviqableMap SortedMap-i, SortedMap isə Xəritəni genişləndirir. Hər bir element unikaldır. TreeMap-ın elan edilməsi aşağıdakı kimidir.

ictimai sinif TreeMap AbstractMap-ı genişləndirir Naviqasiya oluna bilən Xəritə, Klonlana bilən, Seriyalaşdırıla bilən

K açarı, V isə həmin xüsusi açara uyğun gələn dəyərə istinad edir. Hər açar, dəyər cütü TreeMap-ın girişidir.

HashMap və TreeMap arasındakı əsas fərq
HashMap və TreeMap arasındakı əsas fərq

Şəkil 03: Java istifadə edən TreeMap Proqramı

Yuxarıdakı proqrama uyğun olaraq TreeMap-ın obyekti yaradılır. Sonra proqramçı həmin obyektdən istifadə edərək elementlər əlavə edə bilər. Dəyərlər put metodundan istifadə etməklə daxil edilə bilər. Dəyərləri əldə etmək üçün proqramçı açarla get metodundan istifadə etməlidir. studentList.get("150") istifadə edərkən; o, Ann olan indeksə uyğun adı çap edəcək. Əgər proqramçı bütün dəyərləri əldə etmək istəyirsə, o zaman bütün açarları və dəyərləri çap etmək üçün Map. Entry-dən istifadə edə bilər. Çıxışı müşahidə edərkən TreeMap-ın müəyyən bir nizam saxladığını görmək olar. Elementlər artan qaydada çap olunur.

HashMap və TreeMap arasında hansı oxşarlıqlar var?

  • Həm HashMap, həm də TreeMap Xəritə interfeysini həyata keçirir.
  • Həm HashMap, həm də TreeMap bir çox elementləri saxlaya və manipulyasiya edə bilər.
  • Həm HashMap, həm də TreeMap açar, dəyər cütlərini ehtiva edir.
  • Həm HashMap, həm də TreeMap çoxlu null dəyərlərə malik ola bilər.
  • Həm HashMap, həm də TreeMap-da saxlanıla bilən elementlərin sayına heç bir məhdudiyyət yoxdur.

HashMap və TreeMap arasındakı fərq nədir?

HashMap vs TreeMap

A HashMap məlumat elementlərində xüsusi sıranı saxlamayan açar və dəyər cütlərini saxlamaq üçün istifadə edilən Xəritə əsaslı kolleksiya sinfidir. A TreeMap məlumat elementlərinin artan sırasını saxlayan açar və dəyər cütlərini saxlamaq üçün istifadə edilən Xəritə əsaslı kolleksiya sinfidir.
Sifariş
HashMap nizamı saxlamır. Ağac Xəritəsi artan sıranı qoruyur.
Boş Açar
HashMap bir null açarı ehtiva edə bilər. Ağac Xəritəsinin null açarı ola bilməz.
Performans
HashMap TreeMap-dən daha sürətlidir. TreeMap HashMap-dən daha yavaşdır.

Xülasə – HashMap vs TreeMap

Java kimi proqramlaşdırma dilləri kolleksiya çərçivəsini ehtiva edir. Massivlərdə sabit sayda element ola bilər. Buna görə də, massiv ölçüsü başlanğıcda işə salınmalıdır. Kolleksiyalarda proqramçı tələb olunduqda çoxlu elementləri saxlaya bilər. Saxlamaq üçün konkret məbləğ yoxdur. Xəritə kolleksiya çərçivəsinə aid bir interfeysdir. HashMap, məlumat elementlərində müəyyən bir nizamı saxlamayan açar və dəyər cütlərini saxlamaq üçün istifadə olunan Xəritə əsaslı kolleksiya sinfidir. TreeMap, məlumat elementlərinin artan sırasını saxlayan açar və dəyər cütlərini saxlamaq üçün istifadə olunan Xəritə əsaslı kolleksiya sinfidir. Bu məqalə HashMap və Map interfeysini həyata keçirən TreeMap arasındakı fərqi müzakirə etdi. HashMap və TreeMap arasındakı fərq ondan ibarətdir ki, HashMap məlumat elementlərində xüsusi bir sıra saxlamır, TreeMap isə məlumat elementlərinin artan sırasını qoruyur.

Tövsiyə: