Java’da Hashtable ve HashMap’e Giriş

Java Developer Tutorials

Hesaplamada, bir Hashtable anahtar/değer çiftleri olarak temsil edilen verileri depolayan bir veri yapısı olarak tanımlanır. karşılaştırıldığında harita, büyük veri kümeleri için daha verimlidir. Bu Java programlama öğreticisi, Hashtable ve HashMap veri yapıları, özellikleri ve faydaları ve bunlarla Java’da nasıl çalışılacağı.

Okumak: Uzak Yazılım Geliştiricileri için En İyi Araçlar

Java’da Hashtable nedir?

A Hashtable anahtar/değer çiftleri olarak temsil edilen verileri korumak için kullanılan bir veri yapısıdır. ile benzerliklerine rağmen harita, büyük veri kümeleriyle uğraşırken daha verimlidir. Bu neden bir Hashtable performansın önemli olduğu uygulamalarda mükemmel bir seçimdir.

Hashtable hızlı veri aramak, verileri dinamik yollarla depolamak veya sadece kompakt yollarla depolamak için kullanılır, bu da onu diğer çözümlere kıyasla daha verimli hale getirir, örneğin diziler veya bağlantılı listeler.

A Hashtable genellikle Java gibi programlama dillerinde verileri kolayca alınabilecek şekilde depolamak için kullanılır. A Hashtable büyük miktarda veriyi hızlı ve kolay bir şekilde depolayabilir, bu da onu hızın önemli olduğu uygulamalarda kullanım için ideal hale getirir.

A Hashtable her veri parçasının benzersiz bir anahtarı olduğu bir tabloda verileri depolayarak çalışır. Verileri bir Hashtable anahtarını kullanarak. Anahtarı sağladıktan sonra karşılık gelen değeri alabilirsiniz.

Aşağıdaki kod parçacığı, nasıl boş bir dosya oluşturabileceğinizi gösterir. Hashtable misal:

Hashtable<K, V> hashTable = new Hashtable<K, V>();

Java’da Hashtable Nasıl Çalışır?

Hashtable soyut bir sınıftır ve bu sınıfı genişleten iki alt sınıfa sahiptir — HashMap ve BağlantılıHashMap. bu HashMap içinde depolanan öğeler kümesini sağlarken, BağlantılıHashMap herhangi bir pozisyonda yeni öğelerin eklenmesine izin verir.

Java’da Hashtable Kullanmanın Faydaları Nelerdir?

Hashtable performans açısından tüm veri yapılarının en verimlilerinden biridir. yararlanabilirsiniz Hashtable hızlı veri depolama ve alma için. Hashtable aynı zamanda iş parçacığı için güvenlidir ve eşzamanlılığın gerekli olduğu çok iş parçacıklı uygulamalar için mükemmel bir seçimdir.

Java’da Hashtable’ı Ne Zaman Kullanmalısınız?

A Hashtable bilgileri anahtar/değer çiftlerinde saklayan bir veri yapısıdır. Anahtar, bir öğeden öğeler alınırken gereklidir. Hashtable. Bu, çok fazla veriye sahipseniz ve belirli öğeleri hızlı bir şekilde bulmanız gerekiyorsa avantajlı olabilir.

Yine de, Hashtable’lar belirli bir sırada sıralanması gereken verileri depolamak için pek uygun değildir. Ek olarak, anahtarlar bir Hashtable benzersiz olmalıdır, yinelenen anahtarları bir Hashtable.

Etraflı, Hashtable’lar belirli öğelere hızlı erişime ihtiyacınız olduğunda ve verilerin sırasız olup olmadığına aldırmayın, verileri depolamak için iyi bir seçenektir.

Eğitimimizi okuyarak Hashing hakkında daha fazla bilgi edinebilirsiniz: Java’da Hashing’e Giriş.

Java’da Hashtable Nasıl Programlanır

Oluşturmak için Hashtableprogramcıların java.util.Hashtable paket. Ardından, bir Hashtable böyle nesne:

Hashtable hashTable = new Hashtable();

Artık anahtar/değer çiftleri olarak temsil edilen verileri Hashtable misal. Bunu yapmak için, koy() yöntem, bunun gibi:

hashTable.put("key1", "value1");
hashTable.put("key2", "value2");

Değerleri şuradan alabilirsiniz: Hashtable kullanmak almak() yöntem, şöyle:

String str1 = hashTable.get("key1");
String str2 = hashTable.get("key2");

İçinde bir anahtar olup olmadığını kontrol etmek istiyorsanız Hashtablekullanabilirsiniz içerenAnahtar() yöntem:

boolean containsKey = hashTable.containsKey("key1");

Son olarak, tüm anahtarların veya değerlerin bir listesini almak istiyorsanız, Hashtablekullanabilirsiniz anahtar seti() ve değerler() yöntemler:

Set keys = hashTable.keySet();
Collection values = hashTable.values();

Java’da Hashtable’ın Performansı Nasıl İyileştirilir?

Geliştiriciler, geliştirmek için farklı bir karma algoritma kullanabilir Hashtable’ın verim. Tarafından kullanılan varsayılan karma algoritması Hashtable olarak bilinir Adler-32. Ancak, daha hızlı olabilen başka algoritmalar da vardır, örneğin: üfürüm3. Tarafından kullanılan karma algoritmayı değiştirmek için Hashtablekullanabilirsiniz setHashingAlgoritma() yöntem.

Dahili dizi boyutunu artırmak, iyileştirmenin başka bir yoludur. Hashtable’ın verim. Varsayılan olarak, Hashtable boyutunda bir dizi kullanır 16. bu setSize() yöntem, programcıların bu boyutu artırmasını sağlar. Dizi daha büyük olduğunda çarpışmalar daha az olacağından performans artırılacaktır.

Son olarak, performans sizin için önemliyse, tamamen farklı bir veri yapısı kullanmayı da düşünebilirsiniz. Örneğin, kırmızı-siyah ağaç gibi ağaç tabanlı bir veri yapısı kullanabilirsiniz. Hashtable. Ağaç tabanlı veri yapıları, daha hızlı olma eğilimindedir. Hashtable’lar arama işlemleri söz konusu olduğunda.

Java’da HashMap nedir? O nasıl çalışır?

Hashmap bağlantılı liste uygulamasıdır Harita, burada her öğeye benzersiz bir tamsayı karma kodu atanır. bir örneği HashMap anahtarların örnekleri olduğu bir dizi anahtar/değer çifti içerir Sicim ve değerler, herhangi bir Java serileştirilebilir veri türünün örnekleridir. tarafından kullanılan varsayılan depolama mekanizması HashMap temelde saklanan girdilerin sayısı belirli bir sınıra ulaştığında yeniden boyutlandırılan bir dizidir.

Anahtar-değer çiftini kendi hash kodlarını kullanarak haritada depolamak için bir hash kodu kullanıldığından, bu, aynı hash koduna sahip iki anahtarın aynı kovaya gireceği ve bu da çakışmalara neden olabileceği anlamına gelir. Bir çarpışma olduğunda, HashMap çakışan anahtar/değer çiftlerini depolamak için ikincil deposunu kullanır.

Aşağıdaki kod parçacığı, nasıl boş bir dosya oluşturabileceğinizi gösterir. HashMap Java’daki örnek:

HashMap<K, V> hashMap = new HashMap<K, V>();

Java’da HashMap Nasıl Programlanır

Boş bir örneğini nasıl oluşturabileceğinizi gösteren aşağıda gösterilen kod parçacığına bakın. HashMapverileri buna anahtar/değer çiftleri olarak ekleyin ve ardından verileri konsol penceresinde görüntüleyin.

import java.io.*;
import java.util.*;
  public class MyHashMapHashtableExample {
    public static void main(String args[])
    {
        Map<Integer, String> hashMap = new HashMap<>();
        hashMap.put(1, "A");
        hashMap.put(2, "B");
        hashMap.put(3, "C");
        hashMap.put(4, "D");
        hashMap.put(5, "E");
        Hashtable<Integer, String> hashTable
            = new Hashtable<Integer, String>(hashMap);
        System.out.println(hashTable);
    }
}

iken koy yöntemi HashMap sınıf öğeleri eklemek için kullanılabilir, kaldırmak Koleksiyondaki öğeleri silmek için yöntem kullanılabilir.

Örneğin, aşağıda verilen kod parçacığı, aşağıdaki gibi anahtara sahip öğeyi kaldırmak için kullanılabilir. 3.

hashMap.remove(3);

Java’da Hashtable ve HashMap Üzerine Son Düşünceler

A Hashtable büyük miktarda veriyi hızlı ve kolay bir şekilde depolayabilir ve performansın önemli olduğu uygulamalarda kullanım için idealdir. Aynı nesneye ait iki nesne olduğunda çarpışma meydana gelir. Hashtable aynı hash koduna sahip. A Hashtable bir dizi liste kullanarak bu tür çarpışmalardan kaçınmakta ustadır.

Devamını oku Java programlama eğitimleri ve yazılım geliştirme kılavuzları.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.