Прочитать на английском

Поделиться через


KeyValuePair<TKey,TValue> Структура

Определение

Определяет пару "ключ-значение", которая может быть задана или получена.

C#
public struct KeyValuePair<TKey,TValue>
C#
public readonly struct KeyValuePair<TKey,TValue>
C#
[System.Serializable]
public struct KeyValuePair<TKey,TValue>

Параметры типа

TKey

Тип ключа.

TValue

Тип значения.

Наследование
KeyValuePair<TKey,TValue>
Атрибуты

Примеры

В следующем примере кода показано, как перечислить ключи и значения в словаре с помощью KeyValuePair<TKey,TValue> структуры .

Этот код является частью более крупного примера, предоставленного Dictionary<TKey,TValue> для класса .

C#
// When you use foreach to enumerate dictionary elements,
// the elements are retrieved as KeyValuePair objects.
Console.WriteLine();
foreach( KeyValuePair<string, string> kvp in openWith )
{
    Console.WriteLine("Key = {0}, Value = {1}",
        kvp.Key, kvp.Value);
}

Комментарии

Свойство Dictionary<TKey,TValue>.Enumerator.Current возвращает экземпляр этого типа.

Оператор foreach языка C# (for each в C++, For Each в Visual Basic) возвращает объект типа элементов в коллекции. Так как каждый элемент коллекции, основанной на IDictionary<TKey,TValue> , является парой "ключ-значение", тип элемента не является типом ключа или типом значения. Вместо этого используется KeyValuePair<TKey,TValue>тип элемента . Пример:

C#
foreach( KeyValuePair<string, string> kvp in myDictionary )
{
    Console.WriteLine("Key = {0}, Value = {1}", kvp.Key, kvp.Value);
}

Оператор foreach представляет собой оболочку для перечислителя, которая позволяет выполнять только чтение из коллекции, а не запись в коллекцию.

Конструкторы

KeyValuePair<TKey,TValue>(TKey, TValue)

Инициализирует новый экземпляр структуры KeyValuePair<TKey,TValue> с использованием указанных ключа и значения.

Свойства

Key

Возвращает ключ из пары "ключ-значение".

Value

Возвращает значение из пары "ключ-значение".

Методы

Deconstruct(TKey, TValue)

Деконструирует текущий объект KeyValuePair<TKey,TValue>.

ToString()

Возвращает строковое представление структуры KeyValuePair<TKey,TValue>, используя строковые представления ключа и значения.

Применяется к

Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

См. также раздел