SORU
11 ŞUBAT 2009, ÇARŞAMBA


Anahtar kayıp, atmak yerine varsayılan değer döndüren C-bir uygulama var mı?

Sözlük, dizin eğer anahtar yoksa, bir özel durum atar. Bunun yerine, varsayılan(T) döndürecektir C uygulaması var mı?

"" Yöntem, ama bu imkansız etmeniz ile kullanmak için TryGetValue ben biliyorum

Verimli ne gerek var mı?: yapacağı bu

myDict.FirstOrDefault(a => a.Key == someKeyKalue);

Karma bir arama kullanmak yerine anahtarları yineleme olacak bence de sanmıyorum.

CEVAP
11 ŞUBAT 2009, ÇARŞAMBA


Gerçekten de, verimli olmayacak.

Her zaman bir uzantısı yöntemi yazabilirsiniz:

public static TValue GetValueOrDefault<TKey,TValue>
    (this IDictionary<TKey, TValue> dictionary, TKey key)
{
    TValue ret;
    // Ignore return value
    dictionary.TryGetValue(key, out ret);
    return ret;
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bokeh

    Bokeh

    9 HAZİRAN 2014
  • guau . .

    guau . .

    25 Ocak 2008
  • Propaganda Time

    Propaganda T

    19 EYLÜL 2010