SORU
13 AĞUSTOS 2009, PERŞEMBE


C# Java HashMap eşdeğer

# Tek bir C Java bir dünyadan gelen var HashMap bir eş midir? Ne önerirsiniz?

CEVAP
13 AĞUSTOS 2009, PERŞEMBE


Dictionary muhtemelen en yakın yer. System.Collections.Generic.Dictionary System.Collections.Generic.IDictionary arayüz Map arayüzü Java için benzer) uygular.

Bilmeniz gereken bazı önemli farklılıklar:

  • Ekleme/Alma öğeleri
    • Java HashMap/öğeleri alma ayarı put get yöntemleri vardır
      • myMap.put(key, value)
      • MyObject value = myMap.get(key)
    • C#'ın Sözlük/öğeleri alma ayarı için Item özelliği kullanır
      • myDictionary.Item[key] = value
      • MyObject value = myDictionary.Item[key]
  • 11 tuşları **
    • Java HashMap null anahtarları sağlar
    • .NET Dictionary eğer boş bir anahtar eklemek için çalışırsanız ArgumentNullException bir atar
  • Ekleme yinelenen bir anahtar
    • Java HashMap yeni değerini değiştirir.
    • .NET Dictionary Item özelliğini kullanırsanız yeni bir varolan değerin yerini alır. Eğer Add yöntemi kullanırsanız, ArgumentException bir atın yerine.
  • Varolmayan bir anahtar elde etmek için çalışıyor
    • HashMap Java null döndürecektir.
    • .NET Dictionary KeyNotFoundException bir durum oluşturur. Bunu önlemek için Item özelliği yerine TryGetValue yöntemi kullanabilirsiniz:
      MyObject value = null; if (!myDictionary.TryGetValue(key, value)) { /* key doesn't exist */ }

Dictionary'In önceki iki sorun ile baş yardımcı olabilir ContainsKey bir yöntemi vardır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bad Lip Reading

    Bad Lip Read

    22 Mart 2011
  • eHow

    eHow

    27 NİSAN 2006
  • MrDevin521

    MrDevin521

    18 Temmuz 2010