public
bool
Remove(TKey key)
Π£Π΄Π°Π»ΡΠ΅Ρ ΠΊΠ»ΡΡ key ΠΈΠ· ΡΠ»ΠΎΠ²Π°ΡΡ. ΠΡΠΈ ΡΠ΄Π°ΡΠ½ΠΎΠΌ ΠΈΡΡ ΠΎΠ΄Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ true, Π° Π΅ΡΠ»ΠΈ ΠΊΠ»ΡΡ key ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ Π² ΡΠ»ΠΎΠ²Π°ΡΠ΅ β Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ false
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π² ΠΊΠ»Π°ΡΡΠ΅ Dictionary<TKey, TValue> ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°, ΠΏΠΎΠΌΠΈΠΌΠΎ ΡΠ΅Ρ , ΡΡΠΎ ΡΠΆΠ΅ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Ρ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Π² Π½Π΅ΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΡΡ. ΠΡΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π½ΠΈΠΆΠ΅.
Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
public IEqualityComparer<TKey> Comparer { get; } public Dictionary<TKey, TValue>. KeyCollection Keys { get; } public Dictionary<TKey, TValue>. ValueCollection Values { get; }
ΠΠΎΠ»ΡΡΠ°Π΅Ρ ΠΌΠ΅ΡΠΎΠ΄ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π΄Π»Ρ Π²ΡΠ·ΡΠ²Π°ΡΡΠ΅Π³ΠΎ ΡΠ»ΠΎΠ²Π°ΡΡ
ΠΠΎΠ»ΡΡΠ°Π΅Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ -ΠΠΎΠ»ΡΡΠ°Π΅Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ
Π‘Π»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ ΠΊΠ»ΡΡΠΈ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ΡΡ Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ, Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌΠΈ ΡΠΏΠΈΡΠΊΠ°ΠΌΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ² Keys ΠΈ Values. Π ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡΡ ΡΠΈΠΏΠ° DictionaryCTKey, TValue>.KeyCollectionΠΈ Dictionary<TKey, TValue>. ValueCollection ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΡΡ ΠΊΠ°ΠΊ ΠΎΠ±ΠΎΠ±ΡΠ΅Π½Π½ΡΠ΅, ΡΠ°ΠΊ ΠΈ Π½Π΅ΠΎΠ±ΠΎΠ±ΡΠ΅Π½Π½ΡΠ΅ ΡΠΎΡΠΌΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ICollection ΠΈIEnumerable.
Π Π½Π°ΠΊΠΎΠ½Π΅Ρ, Π² ΠΊΠ»Π°ΡΡΠ΅ DictionaryCTKey, TValue> ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π½ΠΈΠΆΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΎΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ IDictionary<TKey, TValueX
public TValue this[TKey key] { get; set; }
ΠΡΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΎΡ ΡΠ»ΡΠΆΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°. ΠΠΎ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ»ΡΠΆΠΈΡ ΠΊΠ»ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, Π° Π½Π΅ ΡΠ°ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡ.
ΠΡΠΈ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ ΡΠΈΠΏΠ° DictionaryCTKey, TValue> ΠΈΠ· Π½Π΅Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ ΠΏΠ°ΡΡ "ΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅7' Π² ΡΠΎΡΠΌΠ΅ ΡΡΡΡΠΊΡΡΡΡ KeyValuePairCTKey, TValueX ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΡΠΎ Π² ΡΡΠΎΠΉ ΡΡΡΡΠΊΡΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ Π΄Π²Π° ΠΏΠΎΠ»Ρ.
public TKey Key; public TValue Value;
Π ΡΡΠΈΡ ΠΏΠΎΠ»ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΠΊΠ»ΡΡ ΠΈΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ. ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΡΡΡΠΊΡΡΡΠ° KeyValuePairCTKey, TValue> Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΊΠ»Π°ΡΡΠ° DictionaryCTKey, TValue> ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΊΠ»ΡΡΠ°ΠΌΠΈ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΏΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠΎ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ ΡΠΈΠΏΠ° DictionaryCTKey, TValue>, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠΈΠΊΠ»Π΅ foreach ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅ΠΌΡΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΏΠ°ΡΡ ΡΠΈΠΏΠ° KeyValuePair.
ΠΡΠ΅ ΠΊΠ»ΡΡΠΈ Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ ΡΠΈΠΏΠ° DictionaryCTKey, TValue> Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ, ΠΏΡΠΈΡΠ΅ΠΌ ΠΊΠ»ΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½ ΡΠ»ΡΠΆΠΈΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠ»ΡΡΠ°. Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ. Π ΡΠΎΠΌΡ ΠΆΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π½Π΅ Ρ ΡΠ°Π½ΡΡΡΡ Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ ΡΠΈΠΏΠ° DictionaryCTKey, TValue> Π² ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅.
Π ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ°
DictionaryCTKey, TValueX
// ΠΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ° ΠΎΠ±ΠΎΠ±ΡΠ΅Π½Π½ΠΎΠΉ // ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ DictionaryCTKey, TValueX
using System;
using System.Collections.Generic;
class GenDictionaryDemo { static void Main() {
// Π‘ΠΎΠ·Π΄Π°ΡΡ ΡΠ»ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ ΠΈ ΡΠ°ΠΌΠΈΠ»ΠΈΠΉ // ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊΠΎΠ² ΠΈ ΠΈΡ Π·Π°ΡΠΏΠ»Π°ΡΡ.
Dictionarycstring, double> diet =
new Dictionarycstring, double>();
// ΠΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ, diet.Add("ΠΠ°ΡΠ»Π΅Ρ, ΠΠΆΠΎΠ½", 73000); diet.Add("Π¨Π²Π°ΡΡ, Capa", 59000); diet.Add("ΠΠ°ΠΉΠΊ, Π’ΠΎΠΌΠ°Ρ", 45000); diet.Add("Π€ΡΡΠ½ΠΊ, ΠΠ΄", 99000);
// ΠΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ, Ρ.Π΅. ΡΠ°ΠΌΠΈΠ»ΠΈΠΉ ΠΈ ΠΈΠΌΠ΅Π½.
ICollection<string> Ρ = diet.Keys;
// ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ»ΡΡΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, Ρ.Π΅. Π·Π°ΡΠΏΠ»Π°ΡΡ, foreach(string str in Ρ)
Console.WriteLine ("{0}, Π·Π°ΡΠΏΠ»Π°ΡΠ°: {1:C}", str, diet[str]);
}
}
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠ°ΡΠ»Π΅Ρ, ΠΠΆΠΎΠ½, Π·Π°ΡΠΏΠ»Π°ΡΠ°: $73,000.00 Π¨Π²Π°ΡΡ, Π‘Π°ΡΠ°, Π·Π°ΡΠΏΠ»Π°ΡΠ°: $59,000.00 ΠΠ°ΠΉΠΊ, Π’ΠΎΠΌΠ°Ρ, Π·Π°ΡΠΏΠ»Π°ΡΠ°: $45,000.00 Π€ΡΡΠ½ΠΊ, ΠΠ΄, Π·Π°ΡΠΏΠ»Π°ΡΠ°: $99,000.00
ΠΠ»Π°ΡΡ SortedDictionary<TKey, TValue>
Π ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠ° SortedDictionary<TKey, TValue> ΠΏΠ°ΡΡ "ΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅" Ρ ΡΠ°Π½ΡΡΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈ Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠ° DictionaryCTKey, TValue>, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΎΠ½ΠΈ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Ρ ΠΏΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌΡ ΠΊΠ»ΡΡΡ. Π ΠΊΠ»Π°ΡΡΠ΅ SortedDictionary<TKey, TValue> ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ IDictionary, IDictionary<TKey, TValue>, ICollection, ICollection<KeyValuePair<TKey, TValue>>, IEnumerable ΠΈIEnumerable<KeyValuePair<TKey, TValue>>. Π ΠΊΠ»Π°ΡΡΠ΅ SortedDictionary<TKey, TValue> ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ.
public SortedDictionary()
public SortedDictionary(IDictionary<TKey, TValue> dictionary)
public SortedDictionary(IComparer<TKey> comparer)
public SortedDictionary(IDictionaryCTKey, TValue> dictionary,
IComparer<TKey> comparer)
Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΏΡΡΡΠΎΠΉ ΡΠ»ΠΎΠ²Π°ΡΡ, Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅ β ΡΠ»ΠΎΠ²Π°ΡΡ Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² dictionary. Π ΡΡΠ΅ΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° comparer ΡΠΈΠΏΠ° IComparer ΡΠΏΠΎΡΠΎΠ± ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ, Π° Π² ΡΠ΅ΡΠ²Π΅ΡΡΠΎΠΌ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅ β ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ»ΠΎΠ²Π°ΡΡ, ΠΏΠΎΠΌΠΈΠΌΠΎ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΡΠΏΠΎΡΠΎΠ±Π° ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ.
Π ΠΊΠ»Π°ΡΡΠ΅ SortedDictionary<TKey, TValue> ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΡΡΠ΄ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ². ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΡΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΡΠ²Π΅Π΄Π΅Π½Ρ Π² ΡΠ°Π±Π». 25.18.
Π’Π°Π±Π»ΠΈΡΠ° 25.18. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π² ΠΊΠ»Π°ΡΡΠ΅ SortedDictionaryCTKey, TValue>
ΠΠ΅ΡΠΎΠ΄ ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
public void Add (TKey key, ΠΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π² ΡΠ»ΠΎΠ²Π°ΡΡ ΠΏΠ°ΡΡ βΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅", TValue value) ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ key ΠΈ value. ΠΡΠ»ΠΈ
ΠΊΠ»ΡΡ key ΡΠΆΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ»ΠΎΠ²Π°ΡΠ΅, ΡΠΎ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ, ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ArgumentException public bool ContainsKey (TKey ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ true, Π΅ΡΠ»ΠΈ Π²ΡΠ·ΡΠ²Π°-ΠΊΠ΅Ρ) ΡΡΠΈΠΉ ΡΠ»ΠΎΠ²Π°ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡ key Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠ»Ρ-
_ΡΠ°; Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ β Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ false
ΠΠ΅ΡΠΎΠ΄
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
public bool
ContainsValue(TValue value) public bool Remove(TKey key)
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ true, Π΅ΡΠ»ΠΈ Π²ΡΠ·ΡΠ²Π°ΡΡΠΈΠΉ ΡΠ»ΠΎΠ²Π°ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ value; Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ β Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ false Π£Π΄Π°Π»ΡΠ΅Ρ ΠΊΠ»ΡΡ key ΠΈΠ· ΡΠ»ΠΎΠ²Π°ΡΡ. ΠΡΠΈ ΡΠ΄Π°ΡΠ½ΠΎΠΌ ΠΈΡΡ ΠΎΠ΄Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ true, Π° Π΅ΡΠ»ΠΈ ΠΊΠ»ΡΡ key ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ Π² ΡΠ»ΠΎΠ²Π°ΡΠ΅ β Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ false
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π² ΠΊΠ»Π°ΡΡΠ΅ SortedDictionary<TKey, TValue> ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°, ΠΏΠΎΠΌΠΈΠΌΠΎ ΡΠ΅Ρ , ΡΡΠΎ ΡΠΆΠ΅ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Ρ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Π² Π½Π΅ΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΡΡ. ΠΡΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π½ΠΈΠΆΠ΅.
Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
public Icomparer<TKey> Comparer { get; ]
public SortedDictionaryCTKey, TValue>. KeyCollection Keys { get; } public SortedDictionary<TKey, TValue>. ValueCollection Values { get; }
\ ΠΠΎΠ»ΡΡΠ°Π΅Ρ ΠΌΠ΅ΡΠΎΠ΄ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π΄Π»Ρ Π²ΡΠ·ΡΠ²Π°ΡΡΠ΅Π³ΠΎ ΡΠ»ΠΎΠ²Π°ΡΡ ΠΠΎΠ»ΡΡΠ°Π΅Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ
ΠΠΎΠ»ΡΡΠ°Π΅Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ
Π‘Π»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ ΠΊΠ»ΡΡΠΈ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ΡΡ Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ, Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌΠΈ ΡΠΏΠΈΡΠΊΠ°ΠΌΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ² Keys ΠΈ Values. Π ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡΡ ΡΠΈΠΏΠ° SortedDictionary<TKey, TValue>.KeyCollectionΠΈ SortedDictionary<TKey, TValu*e>. ValueCollection ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΡΡ ΠΊΠ°ΠΊ ΠΎΠ±ΠΎΠ±ΡΠ΅Π½Π½ΡΠ΅, ΡΠ°ΠΊ ΠΈ Π½Π΅ΠΎΠ±ΠΎΠ±ΡΠ΅Π½Π½ΡΠ΅ ΡΠΎΡΠΌΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ICollection ΠΈ IEnumerable.
Π Π½Π°ΠΊΠΎΠ½Π΅Ρ, Π² ΠΊΠ»Π°ΡΡΠ΅ SortedDictionary<TKey, TValue> ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π½ΠΈΠΆΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΎΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ IDictionary<TKey, TValueX
public TValue this[TKey key] { get; set; }
ΠΡΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΎΡ ΡΠ»ΡΠΆΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°. ΠΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ»ΡΠΆΠΈΡ ΠΊΠ»ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, Π° Π½Π΅ ΡΠ°ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡ.
ΠΡΠΈ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ ΡΠΈΠΏΠ° SortedDictionary<TKey, TValue> ΠΈΠ· Π½Π΅Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ ΠΏΠ°ΡΡ "ΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅" Π² ΡΠΎΡΠΌΠ΅ ΡΡΡΡΠΊΡΡΡΡ KeyValuePair<TKey, TValueX ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΡΠΎ Π² ΡΡΠΎΠΉ ΡΡΡΡΠΊΡΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ Π΄Π²Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΏΠΎΠ»Ρ.
public TKey Key; public TValue Value;
Π ΡΡΠΈΡ ΠΏΠΎΠ»ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΠΊΠ»ΡΡ ΠΈΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ. ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΡΡΡΠΊΡΡΡΠ° KeyValuePair<TKey, TValue> Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΊΠ»Π°ΡΡΠ° SortedDictionary<TKey, TValue> ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΊΠ»ΡΡΠ°ΠΌΠΈ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΏΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠΎ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ ΡΠΈΠΏΠ° SortedDictionary<TKey, TValue>, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² ΡΠΈΠΊΠ»Π΅ foreach, ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅ΠΌΡΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΏΠ°ΡΡ ΡΠΈΠΏΠ° KeyValuePair.
ΠΡΠ΅ ΠΊΠ»ΡΡΠΈ Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ ΡΠΈΠΏΠ° SortedDictionary<TKey, TValue> Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ, ΠΏΡΠΈΡΠ΅ΠΌ ΠΊΠ»ΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½ ΡΠ»ΡΠΆΠΈΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠ»ΡΡΠ°. Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ.
Π ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ° SortedDictionary<TKey, TValueX ΠΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°, Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ° Dictionary<TKey, TValueX Π Π΄Π°Π½Π½ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊΠΎΠ² ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π° ΠΏΠΎ ΡΠ°ΠΌΠΈΠ»ΠΈΠΈ ΠΈ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»ΡΠΆΠ°Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠ»ΡΡΠ°.