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


SortedList<TKey,TValue> Класс

Определение

Представляет коллекцию пар "ключ-значение", отсортированных по ключу на основе связанной IComparer<T> реализации.

generic <typename TKey, typename TValue>
public ref class SortedList : System::Collections::Generic::ICollection<System::Collections::Generic::KeyValuePair<TKey, TValue>>, System::Collections::Generic::IDictionary<TKey, TValue>, System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<TKey, TValue>>, System::Collections::Generic::IReadOnlyCollection<System::Collections::Generic::KeyValuePair<TKey, TValue>>, System::Collections::Generic::IReadOnlyDictionary<TKey, TValue>, System::Collections::IDictionary
generic <typename TKey, typename TValue>
public ref class SortedList : System::Collections::Generic::ICollection<System::Collections::Generic::KeyValuePair<TKey, TValue>>, System::Collections::Generic::IDictionary<TKey, TValue>, System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<TKey, TValue>>, System::Collections::IDictionary
public class SortedList<TKey,TValue> : System.Collections.Generic.ICollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>, System.Collections.Generic.IDictionary<TKey,TValue>, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>>, System.Collections.Generic.IReadOnlyCollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>, System.Collections.Generic.IReadOnlyDictionary<TKey,TValue>, System.Collections.IDictionary
[System.Runtime.InteropServices.ComVisible(false)]
[System.Serializable]
public class SortedList<TKey,TValue> : System.Collections.Generic.ICollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>, System.Collections.Generic.IDictionary<TKey,TValue>, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>>, System.Collections.IDictionary
[System.Runtime.InteropServices.ComVisible(false)]
[System.Serializable]
public class SortedList<TKey,TValue> : System.Collections.Generic.ICollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>, System.Collections.Generic.IDictionary<TKey,TValue>, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>>, System.Collections.Generic.IReadOnlyCollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>, System.Collections.Generic.IReadOnlyDictionary<TKey,TValue>, System.Collections.IDictionary
type SortedList<'Key, 'Value> = class
    interface ICollection<KeyValuePair<'Key, 'Value>>
    interface seq<KeyValuePair<'Key, 'Value>>
    interface IEnumerable
    interface IDictionary<'Key, 'Value>
    interface IReadOnlyCollection<KeyValuePair<'Key, 'Value>>
    interface IReadOnlyDictionary<'Key, 'Value>
    interface ICollection
    interface IDictionary
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Serializable>]
type SortedList<'Key, 'Value> = class
    interface IDictionary<'Key, 'Value>
    interface ICollection<KeyValuePair<'Key, 'Value>>
    interface seq<KeyValuePair<'Key, 'Value>>
    interface IDictionary
    interface ICollection
    interface IEnumerable
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Serializable>]
type SortedList<'Key, 'Value> = class
    interface IDictionary<'Key, 'Value>
    interface ICollection<KeyValuePair<'Key, 'Value>>
    interface seq<KeyValuePair<'Key, 'Value>>
    interface IEnumerable
    interface IDictionary
    interface ICollection
    interface IReadOnlyDictionary<'Key, 'Value>
    interface IReadOnlyCollection<KeyValuePair<'Key, 'Value>>
Public Class SortedList(Of TKey, TValue)
Implements ICollection(Of KeyValuePair(Of TKey, TValue)), IDictionary, IDictionary(Of TKey, TValue), IEnumerable(Of KeyValuePair(Of TKey, TValue)), IReadOnlyCollection(Of KeyValuePair(Of TKey, TValue)), IReadOnlyDictionary(Of TKey, TValue)
Public Class SortedList(Of TKey, TValue)
Implements ICollection(Of KeyValuePair(Of TKey, TValue)), IDictionary, IDictionary(Of TKey, TValue), IEnumerable(Of KeyValuePair(Of TKey, TValue))

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

TKey

Тип ключей в коллекции.

TValue

Тип значений в коллекции.

Наследование
SortedList<TKey,TValue>
Производный
Атрибуты
Реализации

Примеры

В следующем примере кода создается пустая SortedList<TKey,TValue> строка со строковыми ключами и используется Add метод для добавления некоторых элементов. В примере показано, что Add метод вызывает исключение ArgumentException при попытке добавить повторяющийся ключ.

В примере свойство Item[] (индексатор в C#) используется для получения значений, демонстрируя, что KeyNotFoundException возникает, когда запрошенный ключ отсутствует, и показывает, что значение, связанное с ключом, можно заменить.

В примере показано, как использовать TryGetValue метод в качестве более эффективного способа извлечения значений, если программа часто должна попробовать значения ключей, которые не находятся в отсортированного списка, и показывает, как использовать ContainsKey метод для проверки наличия ключа перед вызовом Add метода.

В примере показано, как перечислить ключи и значения в отсортированного списка и как перечислить ключи и значения только с помощью Keys свойства и Values свойства.

Наконец, в примере демонстрируется Remove метод.

using System;
using System.Collections.Generic;

public class Example
{
    public static void Main()
    {
        // Create a new sorted list of strings, with string
        // keys.
        SortedList<string, string> openWith =
            new SortedList<string, string>();

        // Add some elements to the list. There are no
        // duplicate keys, but some of the values are duplicates.
        openWith.Add("txt", "notepad.exe");
        openWith.Add("bmp", "paint.exe");
        openWith.Add("dib", "paint.exe");
        openWith.Add("rtf", "wordpad.exe");

        // The Add method throws an exception if the new key is
        // already in the list.
        try
        {
            openWith.Add("txt", "winword.exe");
        }
        catch (ArgumentException)
        {
            Console.WriteLine("An element with Key = \"txt\" already exists.");
        }

        // The Item property is another name for the indexer, so you
        // can omit its name when accessing elements.
        Console.WriteLine("For key = \"rtf\", value = {0}.",
            openWith["rtf"]);

        // The indexer can be used to change the value associated
        // with a key.
        openWith["rtf"] = "winword.exe";
        Console.WriteLine("For key = \"rtf\", value = {0}.",
            openWith["rtf"]);

        // If a key does not exist, setting the indexer for that key
        // adds a new key/value pair.
        openWith["doc"] = "winword.exe";

        // The indexer throws an exception if the requested key is
        // not in the list.
        try
        {
            Console.WriteLine("For key = \"tif\", value = {0}.",
                openWith["tif"]);
        }
        catch (KeyNotFoundException)
        {
            Console.WriteLine("Key = \"tif\" is not found.");
        }

        // When a program often has to try keys that turn out not to
        // be in the list, TryGetValue can be a more efficient
        // way to retrieve values.
        string value = "";
        if (openWith.TryGetValue("tif", out value))
        {
            Console.WriteLine("For key = \"tif\", value = {0}.", value);
        }
        else
        {
            Console.WriteLine("Key = \"tif\" is not found.");
        }

        // ContainsKey can be used to test keys before inserting
        // them.
        if (!openWith.ContainsKey("ht"))
        {
            openWith.Add("ht", "hypertrm.exe");
            Console.WriteLine("Value added for key = \"ht\": {0}",
                openWith["ht"]);
        }

        // When you use foreach to enumerate list 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);
        }

        // To get the values alone, use the Values property.
        IList<string> ilistValues = openWith.Values;

        // The elements of the list are strongly typed with the
        // type that was specified for the SortedList values.
        Console.WriteLine();
        foreach( string s in ilistValues )
        {
            Console.WriteLine("Value = {0}", s);
        }

        // The Values property is an efficient way to retrieve
        // values by index.
        Console.WriteLine("\nIndexed retrieval using the Values " +
            "property: Values[2] = {0}", openWith.Values[2]);

        // To get the keys alone, use the Keys property.
        IList<string> ilistKeys = openWith.Keys;

        // The elements of the list are strongly typed with the
        // type that was specified for the SortedList keys.
        Console.WriteLine();
        foreach( string s in ilistKeys )
        {
            Console.WriteLine("Key = {0}", s);
        }

        // The Keys property is an efficient way to retrieve
        // keys by index.
        Console.WriteLine("\nIndexed retrieval using the Keys " +
            "property: Keys[2] = {0}", openWith.Keys[2]);

        // Use the Remove method to remove a key/value pair.
        Console.WriteLine("\nRemove(\"doc\")");
        openWith.Remove("doc");

        if (!openWith.ContainsKey("doc"))
        {
            Console.WriteLine("Key \"doc\" is not found.");
        }
    }
}

/* This code example produces the following output:

An element with Key = "txt" already exists.
For key = "rtf", value = wordpad.exe.
For key = "rtf", value = winword.exe.
Key = "tif" is not found.
Key = "tif" is not found.
Value added for key = "ht": hypertrm.exe

Key = bmp, Value = paint.exe
Key = dib, Value = paint.exe
Key = doc, Value = winword.exe
Key = ht, Value = hypertrm.exe
Key = rtf, Value = winword.exe
Key = txt, Value = notepad.exe

Value = paint.exe
Value = paint.exe
Value = winword.exe
Value = hypertrm.exe
Value = winword.exe
Value = notepad.exe

Indexed retrieval using the Values property: Values[2] = winword.exe

Key = bmp
Key = dib
Key = doc
Key = ht
Key = rtf
Key = txt

Indexed retrieval using the Keys property: Keys[2] = doc

Remove("doc")
Key "doc" is not found.
 */
Imports System.Collections.Generic

Public Class Example
    
    Public Shared Sub Main() 

        ' Create a new sorted list of strings, with string 
        ' keys. 
        Dim openWith As New SortedList(Of String, String)
        
        ' Add some elements to the list. There are no 
        ' duplicate keys, but some of the values are duplicates.
        openWith.Add("txt", "notepad.exe")
        openWith.Add("bmp", "paint.exe")
        openWith.Add("dib", "paint.exe")
        openWith.Add("rtf", "wordpad.exe")
        
        ' The Add method throws an exception if the new key is 
        ' already in the list.
        Try
            openWith.Add("txt", "winword.exe")
        Catch 
            Console.WriteLine("An element with Key = ""txt"" already exists.")
        End Try

        ' The Item property is the default property, so you 
        ' can omit its name when accessing elements. 
        Console.WriteLine("For key = ""rtf"", value = {0}.", _
            openWith("rtf"))
        
        ' The default Item property can be used to change the value
        ' associated with a key.
        openWith("rtf") = "winword.exe"
        Console.WriteLine("For key = ""rtf"", value = {0}.", _
            openWith("rtf"))
        
        ' If a key does not exist, setting the default Item property
        ' for that key adds a new key/value pair.
        openWith("doc") = "winword.exe"

        ' The default Item property throws an exception if the requested
        ' key is not in the list.
        Try
            Console.WriteLine("For key = ""tif"", value = {0}.", _
                openWith("tif"))
        Catch 
            Console.WriteLine("Key = ""tif"" is not found.")
        End Try

        ' When a program often has to try keys that turn out not to
        ' be in the list, TryGetValue can be a more efficient 
        ' way to retrieve values.
        Dim value As String = ""
        If openWith.TryGetValue("tif", value) Then
            Console.WriteLine("For key = ""tif"", value = {0}.", value)
        Else
            Console.WriteLine("Key = ""tif"" is not found.")
        End If

        ' ContainsKey can be used to test keys before inserting 
        ' them.
        If Not openWith.ContainsKey("ht") Then
            openWith.Add("ht", "hypertrm.exe")
            Console.WriteLine("Value added for key = ""ht"": {0}", _
                openWith("ht"))
        End If

        ' When you use foreach to enumerate list elements,
        ' the elements are retrieved as KeyValuePair objects.
        Console.WriteLine()
        For Each kvp As KeyValuePair(Of String, String) In openWith
            Console.WriteLine("Key = {0}, Value = {1}", _
                kvp.Key, kvp.Value)
        Next kvp

        ' To get the values alone, use the Values property.
        Dim ilistValues As IList(Of String) = openWith.Values
        
        ' The elements of the list are strongly typed with the
        ' type that was specified for the SortedList values.
        Console.WriteLine()
        For Each s As String In ilistValues
            Console.WriteLine("Value = {0}", s)
        Next s

        ' The Values property is an efficient way to retrieve
        ' values by index.
        Console.WriteLine(vbLf & "Indexed retrieval using the " & _
            "Values property: Values(2) = {0}", openWith.Values(2))

        ' To get the keys alone, use the Keys property.
        Dim ilistKeys As IList(Of String) = openWith.Keys
        
        ' The elements of the list are strongly typed with the
        ' type that was specified for the SortedList keys.
        Console.WriteLine()
        For Each s As String In ilistKeys 
            Console.WriteLine("Key = {0}", s)
        Next s

        ' The Keys property is an efficient way to retrieve
        ' keys by index.
        Console.WriteLine(vbLf & "Indexed retrieval using the " & _
            "Keys property: Keys(2) = {0}", openWith.Keys(2))

        ' Use the Remove method to remove a key/value pair.
        Console.WriteLine(vbLf + "Remove(""doc"")")
        openWith.Remove("doc")
        
        If Not openWith.ContainsKey("doc") Then
            Console.WriteLine("Key ""doc"" is not found.")
        End If

    End Sub

End Class

' This code example produces the following output:
'
'An element with Key = "txt" already exists.
'For key = "rtf", value = wordpad.exe.
'For key = "rtf", value = winword.exe.
'Key = "tif" is not found.
'Key = "tif" is not found.
'Value added for key = "ht": hypertrm.exe
'
'Key = bmp, Value = paint.exe
'Key = dib, Value = paint.exe
'Key = doc, Value = winword.exe
'Key = ht, Value = hypertrm.exe
'Key = rtf, Value = winword.exe
'Key = txt, Value = notepad.exe
'
'Value = paint.exe
'Value = paint.exe
'Value = winword.exe
'Value = hypertrm.exe
'Value = winword.exe
'Value = notepad.exe
'
'Indexed retrieval using the Values property: Values(2) = winword.exe
'
'Key = bmp
'Key = dib
'Key = doc
'Key = ht
'Key = rtf
'Key = txt
'
'Indexed retrieval using the Keys property: Keys(2) = doc
'
'Remove("doc")
'Key "doc" is not found.
'
open System
open System.Collections.Generic

// Create a new sorted list of strings, with string
// keys.
let openWith = SortedList<string, string>()

// Add some elements to the list. There are no
// duplicate keys, but some of the values are duplicates.
openWith.Add("txt", "notepad.exe")
openWith.Add("bmp", "paint.exe")
openWith.Add("dib", "paint.exe")
openWith.Add("rtf", "wordpad.exe")

// The Add method throws an exception if the new key is
// already in the list.
try
    openWith.Add("txt", "winword.exe");
with
    | :? ArgumentException ->
        printfn "An element with Key = \"txt\" already exists."

// The Item property is another name for the indexer, so you
// can omit its name when accessing elements.
printfn $"""For key = "rtf", value = {openWith["rtf"]}."""

// The indexer can be used to change the value associated
// with a key.
openWith["rtf"] <- "winword.exe"
printfn $"""For key = "rtf", value = {openWith["rtf"]}."""

// If a key does not exist, setting the indexer for that key
// adds a new key/value pair.
openWith["doc"] <- "winword.exe";

// The indexer throws an exception if the requested key is
// not in the list.
try
    printfn $"""For key = "tif", value = {openWith["tif"]}."""
with 
    | :? KeyNotFoundException ->
        printfn "Key = \"tif\" is not found."

// When a program often has to try keys that turn out not to
// be in the list, TryGetValue can be a more efficient
// way to retrieve values.
match openWith.TryGetValue("tif") with
| true, value ->
    printfn "For key = \"tif\", value = {value}."
| false, _ ->
    printfn "Key = \"tif\" is not found."

// ContainsKey can be used to test keys before inserting
// them.
if not (openWith.ContainsKey("ht")) then
    openWith.Add("ht", "hypertrm.exe");
    printfn """Value added for key = "ht": {openWith["ht"]}"""

// When you use foreach to enumerate list elements,
// the elements are retrieved as KeyValuePair objects.
Console.WriteLine()
for kvp in openWith do
    printfn $"Key = {kvp.Key}, Value = {kvp.Value}"

// To get the values alone, use the Values property.
let ilistValues = openWith.Values;

// The elements of the list are strongly typed with the
// type that was specified for the SortedList values.
Console.WriteLine()
for s in ilistValues do
    printfn $"Value = {s}"

// The Values property is an efficient way to retrieve
// values by index.
printf "\nIndexed retrieval using the Values "
printfn $"property: Values[2] = {openWith.Values[2]}"

// To get the keys alone, use the Keys property.
let ilistKeys = openWith.Keys;

// The elements of the list are strongly typed with the
// type that was specified for the SortedList keys.
Console.WriteLine()
for s in ilistKeys do
    printfn $"Key = {s}"

// The Keys property is an efficient way to retrieve
// keys by index.
printf "\nIndexed retrieval using the Keys "
printfn $"property: Keys[2] = {openWith.Keys[2]}"

// Use the Remove method to remove a key/value pair.
printfn "\nRemove(\"doc\")"
openWith.Remove("doc") |> ignore

if not (openWith.ContainsKey("doc")) then
    printfn "Key \"doc\" is not found."

(* This code example produces the following output:

An element with Key = "txt" already exists.
For key = "rtf", value = wordpad.exe.
For key = "rtf", value = winword.exe.
Key = "tif" is not found.
Key = "tif" is not found.
Value added for key = "ht": hypertrm.exe

Key = bmp, Value = paint.exe
Key = dib, Value = paint.exe
Key = doc, Value = winword.exe
Key = ht, Value = hypertrm.exe
Key = rtf, Value = winword.exe
Key = txt, Value = notepad.exe

Value = paint.exe
Value = paint.exe
Value = winword.exe
Value = hypertrm.exe
Value = winword.exe
Value = notepad.exe

Indexed retrieval using the Values property: Values[2] = winword.exe

Key = bmp
Key = dib
Key = doc
Key = ht
Key = rtf
Key = txt

Indexed retrieval using the Keys property: Keys[2] = doc

Remove("doc")
Key "doc" is not found.
 *)

Комментарии

Универсальный SortedList<TKey,TValue> класс представляет собой массив пар "ключ-значение" с получением O(log n), где n — это количество элементов в словаре. В этом случае он аналогичен универсальному классу SortedDictionary<TKey,TValue> . Два класса имеют аналогичные объектные модели, и оба имеют получение O(log n). Где два класса отличаются в использовании памяти и скорости вставки и удаления:

Еще одно различие между SortedDictionary<TKey,TValue>SortedList<TKey,TValue> классами — SortedList<TKey,TValue> это поддержка эффективного индексированного извлечения ключей и значений с помощью коллекций, возвращаемых свойствами и Values свойствамиKeys. При доступе к свойствам не требуется повторно создавать списки, так как списки являются просто оболочками для внутренних массивов ключей и значений. В следующем коде показано использование Values свойства для индексированного извлечения значений из отсортированного списка строк:

string v = mySortedList.Values[3];
Dim v As String = mySortedList.Values(3)
let v = mySortedList.Values[3]

SortedList<TKey,TValue> реализуется в виде массива пар "ключ-значение", отсортированных по ключу. Каждый элемент можно получить как KeyValuePair<TKey,TValue> объект.

Ключевые объекты должны быть неизменяемыми, если они используются в качестве ключей в объекте SortedList<TKey,TValue>. Каждый ключ в объекте SortedList<TKey,TValue> должен быть уникальным. Ключ не может быть, но значение может быть null, если тип значений в списке, TValueявляется ссылочным типом.

SortedList<TKey,TValue> требуется реализация сравнения для сортировки и выполнения сравнений. Средство Comparer<T>.Default сравнения по умолчанию проверяет, реализует System.IComparable<T> ли тип TKey ключа и использует ли эта реализация, если она доступна. Если нет, проверяет, Comparer<T>.Default реализуется System.IComparableли тип TKey ключа. Если тип TKey ключа не реализует ни один интерфейс, можно указать System.Collections.Generic.IComparer<T> реализацию в перегрузке конструктора, которая принимает comparer параметр.

Емкость SortedList<TKey,TValue> — это количество элементов, которые SortedList<TKey,TValue> могут храниться. Так как элементы добавляются в SortedList<TKey,TValue>объект, емкость автоматически увеличивается при необходимости при перераспределении внутреннего массива. Емкость можно уменьшить путем вызова TrimExcess или явного Capacity задания свойства. Уменьшение емкости перераспреждает память и копирует все элементы в ней SortedList<TKey,TValue>.

Только .NET Framework: Для очень крупных SortedList<TKey,TValue> объектов можно увеличить максимальную емкость до 2 миллиардов элементов в 64-разрядной системе, задав enabled атрибут <gcAllowVeryLargeObjects> элемента true конфигурации в среде выполнения.

Оператор foreach языка C# (For Each в Visual Basic) возвращает объект типа элементов в коллекции. Так как элементы SortedList<TKey,TValue> являются парами "ключ-значение", тип элемента не является типом ключа или типа значения. Вместо этого тип элемента имеет тип KeyValuePair<TKey,TValue>. Например:

foreach( KeyValuePair<int, string> kvp in mySortedList )
{
    Console.WriteLine("Key = {0}, Value = {1}", kvp.Key, kvp.Value);
}
For Each kvp As KeyValuePair(Of Integer, String) In mySortedList
    Console.WriteLine("Key = {0}, Value = {1}", kvp.Key, kvp.Value)
Next kvp
for kvp in mySortedList do
    printfn $"Key = {kvp.Key}, Value = {kvp.Value}"

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

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

Имя Описание
SortedList<TKey,TValue>()

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

SortedList<TKey,TValue>(IComparer<TKey>)

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

SortedList<TKey,TValue>(IDictionary<TKey,TValue>, IComparer<TKey>)

Инициализирует новый экземпляр SortedList<TKey,TValue> класса, который содержит элементы, скопированные из указанного IDictionary<TKey,TValue>объекта, имеет достаточную емкость для размещения количества скопированных элементов и использует указанный.IComparer<T>

SortedList<TKey,TValue>(IDictionary<TKey,TValue>)

Инициализирует новый экземпляр SortedList<TKey,TValue> класса, который содержит элементы, скопированные из указанного IDictionary<TKey,TValue>объекта, имеет достаточную емкость для размещения количества скопированных элементов и использует значение по умолчанию IComparer<T>.

SortedList<TKey,TValue>(Int32, IComparer<TKey>)

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

SortedList<TKey,TValue>(Int32)

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

Свойства

Имя Описание
Capacity

Возвращает или задает количество элементов, которые SortedList<TKey,TValue> могут содержаться.

Comparer

IComparer<T> Возвращает отсортированный список.

Count

Возвращает количество пар "ключ-значение", содержащихся в элементе SortedList<TKey,TValue>.

Item[TKey]

Возвращает или задает значение, связанное с указанным ключом.

Keys

Возвращает коллекцию, содержащую ключи в SortedList<TKey,TValue>отсортированного порядке.

Values

Возвращает коллекцию, содержащую значения в объекте SortedList<TKey,TValue>.

Методы

Имя Описание
Add(TKey, TValue)

Добавляет элемент с указанным ключом и значением в элемент SortedList<TKey,TValue>.

Clear()

Удаляет все элементы из элемента SortedList<TKey,TValue>.

ContainsKey(TKey)

Определяет, содержит ли SortedList<TKey,TValue> определенный ключ.

ContainsValue(TValue)

Определяет, содержит ли SortedList<TKey,TValue> определенное значение.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetEnumerator()

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

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetKeyAtIndex(Int32)

Возвращает ключ, соответствующий указанному индексу.

GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
GetValueAtIndex(Int32)

Возвращает значение, соответствующее указанному индексу.

IndexOfKey(TKey)

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

IndexOfValue(TValue)

Выполняет поиск указанного значения и возвращает отсчитываемый от нуля индекс первого вхождения в пределах всего SortedList<TKey,TValue>.

MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
Remove(TKey)

Удаляет элемент с указанным ключом из элемента SortedList<TKey,TValue>.

RemoveAt(Int32)

Удаляет элемент по указанному индексу SortedList<TKey,TValue>элемента.

SetValueAtIndex(Int32, TValue)

Обновляет значение, соответствующее указанному индексу.

ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
TrimExcess()

Задает емкость фактическому количеству элементов в SortedList<TKey,TValue>объекте , если это число меньше 90 процентов текущей емкости.

TryGetValue(TKey, TValue)

Возвращает значение, связанное с указанным ключом.

Явные реализации интерфейса

Имя Описание
ICollection.CopyTo(Array, Int32)

Копирует элементы объекта ICollectionArrayв определенный индекс, начиная с определенного Array индекса.

ICollection.IsSynchronized

Возвращает значение, указывающее, синхронизирован ли доступ к ICollection синхронизированному (потокобезопасно).

ICollection.SyncRoot

Получает объект, который можно использовать для синхронизации доступа к объекту ICollection.

ICollection<KeyValuePair<TKey,TValue>>.Add(KeyValuePair<TKey,TValue>)

Добавляет в нее ICollection<T>пару "ключ-значение".

ICollection<KeyValuePair<TKey,TValue>>.Contains(KeyValuePair<TKey,TValue>)

Определяет, содержит ли ICollection<T> определенный элемент.

ICollection<KeyValuePair<TKey,TValue>>.CopyTo(KeyValuePair<TKey,TValue>[], Int32)

Копирует элементы объекта ICollection<T>Arrayв определенный индекс, начиная с определенного Array индекса.

ICollection<KeyValuePair<TKey,TValue>>.IsReadOnly

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

ICollection<KeyValuePair<TKey,TValue>>.Remove(KeyValuePair<TKey,TValue>)

Удаляет первое вхождение определенной пары "ключ-значение" из .ICollection<T>

IDictionary.Add(Object, Object)

Добавляет элемент с предоставленным ключом и значением в элемент IDictionary.

IDictionary.Contains(Object)

Определяет, содержит ли IDictionary элемент с указанным ключом.

IDictionary.GetEnumerator()

Возвращает значение IDictionaryEnumerator для IDictionaryобъекта .

IDictionary.IsFixedSize

Возвращает значение, указывающее, имеет ли IDictionary размер фиксированного размера.

IDictionary.IsReadOnly

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

IDictionary.Item[Object]

Возвращает или задает элемент с указанным ключом.

IDictionary.Keys

ICollection Возвращает содержащий ключи объекта IDictionary.

IDictionary.Remove(Object)

Удаляет элемент с указанным ключом из элемента IDictionary.

IDictionary.Values

ICollection Возвращает значение, содержащее значения в объекте IDictionary.

IDictionary<TKey,TValue>.Keys

ICollection<T> Возвращает содержащий ключи объекта IDictionary<TKey,TValue>.

IDictionary<TKey,TValue>.Values

ICollection<T> Возвращает значение, содержащее значения в объекте IDictionary<TKey,TValue>.

IEnumerable.GetEnumerator()

Возвращает перечислитель, который выполняет итерацию по коллекции.

IEnumerable<KeyValuePair<TKey,TValue>>.GetEnumerator()

Возвращает перечислитель, который выполняет итерацию по коллекции.

IReadOnlyDictionary<TKey,TValue>.Keys

Возвращает перечисленную коллекцию, содержащую ключи в словаре только для чтения.

IReadOnlyDictionary<TKey,TValue>.Values

Возвращает перечисленную коллекцию, содержащую значения в словаре только для чтения.

Методы расширения

Имя Описание
Aggregate<TSource,TAccumulate,TResult>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>)

Применяет функцию аккумулятора по последовательности. Указанное начальное значение используется в качестве начального значения аккумулятора, а указанная функция используется для выбора значения результата.

Aggregate<TSource,TAccumulate>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>)

Применяет функцию аккумулятора по последовательности. Указанное начальное значение используется в качестве начального значения аккумулятора.

Aggregate<TSource>(IEnumerable<TSource>, Func<TSource,TSource,TSource>)

Применяет функцию аккумулятора по последовательности.

AggregateBy<TSource,TKey,TAccumulate>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TKey,TAccumulate>, Func<TAccumulate,TSource,TAccumulate>, IEqualityComparer<TKey>)

Применяет функцию аккуматора по последовательности, группируя результаты по ключу.

AggregateBy<TSource,TKey,TAccumulate>(IEnumerable<TSource>, Func<TSource, TKey>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, IEqualityComparer<TKey>)

Применяет функцию аккуматора по последовательности, группируя результаты по ключу.

All<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Определяет, соответствуют ли все элементы последовательности условию.

Ancestors<T>(IEnumerable<T>, XName)

Возвращает отфильтрованную коллекцию элементов, содержащих предки каждого узла в исходной коллекции. В коллекцию включены только элементы с соответствующими XName.

Ancestors<T>(IEnumerable<T>)

Возвращает коллекцию элементов, содержащих предки каждого узла в исходной коллекции.

Any<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Определяет, соответствует ли любой элемент последовательности условию.

Any<TSource>(IEnumerable<TSource>)

Определяет, содержит ли последовательность любые элементы.

Append<TSource>(IEnumerable<TSource>, TSource)

Добавляет значение в конец последовательности.

AsEnumerable<TSource>(IEnumerable<TSource>)

Возвращает входное значение, типизированное как IEnumerable<T>.

AsParallel(IEnumerable)

Включает параллелизацию запроса.

AsParallel<TSource>(IEnumerable<TSource>)

Включает параллелизацию запроса.

AsQueryable(IEnumerable)

Преобразует IEnumerable в IQueryable.

AsQueryable<TElement>(IEnumerable<TElement>)

Преобразует универсальный IEnumerable<T> в универсальный IQueryable<T>.

AsReadOnly<TKey,TValue>(IDictionary<TKey,TValue>)

Возвращает оболочку только ReadOnlyDictionary<TKey,TValue> для чтения для текущего словаря.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Вычисляет среднее значение последовательности Decimal значений, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Вычисляет среднее значение последовательности Double значений, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Вычисляет среднее значение последовательности Int32 значений, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Вычисляет среднее значение последовательности Int64 значений, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Вычисляет среднее значение последовательности значений, допускающих значение NULL, Decimal, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Вычисляет среднее значение последовательности значений, допускающих значение NULL, Double, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Вычисляет среднее значение последовательности значений, допускающих значение NULL, Int32, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Вычисляет среднее значение последовательности значений, допускающих значение NULL, Int64, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Вычисляет среднее значение последовательности значений, допускающих значение NULL, Single, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Average<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

Вычисляет среднее значение последовательности Single значений, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Cast<TResult>(IEnumerable)

Приведение элементов IEnumerable к указанному типу.

Chunk<TSource>(IEnumerable<TSource>, Int32)

Разбивает элементы последовательности на блоки размера не более size.

Concat<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

Объединяет две последовательности.

Contains<TSource>(IEnumerable<TSource>, TSource, IEqualityComparer<TSource>)

Определяет, содержит ли последовательность указанный элемент с помощью указанного IEqualityComparer<T>.

Contains<TSource>(IEnumerable<TSource>, TSource)

Определяет, содержит ли последовательность указанный элемент с помощью средства сравнения равенства по умолчанию.

CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler)

Копирует объекты DataRow в указанный DataTable, учитывая входной IEnumerable<T> объект, в котором T универсальный параметр DataRow.

CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption)

Копирует объекты DataRow в указанный DataTable, учитывая входной IEnumerable<T> объект, в котором T универсальный параметр DataRow.

CopyToDataTable<T>(IEnumerable<T>)

Возвращает DataTable, содержащий копии объектов DataRow, учитывая входной объект IEnumerable<T>, в котором T универсальный параметр DataRow.

Count<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Возвращает число, представляющее, сколько элементов в указанной последовательности удовлетворяет условию.

Count<TSource>(IEnumerable<TSource>)

Возвращает количество элементов в последовательности.

CountBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Возвращает количество элементов в исходной последовательности, сгруппированных по ключу.

DefaultIfEmpty<TSource>(IEnumerable<TSource>, TSource)

Возвращает элементы указанной последовательности или указанное значение в одной коллекции, если последовательность пуста.

DefaultIfEmpty<TSource>(IEnumerable<TSource>)

Возвращает элементы указанной последовательности или значение параметра типа по умолчанию в одной коллекции, если последовательность пуста.

DescendantNodes<T>(IEnumerable<T>)

Возвращает коллекцию потомков каждого документа и элемента в исходной коллекции.

Descendants<T>(IEnumerable<T>, XName)

Возвращает отфильтрованную коллекцию элементов, содержащих потомки каждого элемента и документа в исходной коллекции. В коллекцию включены только элементы с соответствующими XName.

Descendants<T>(IEnumerable<T>)

Возвращает коллекцию элементов, содержащих потомки каждого элемента и документа в исходной коллекции.

Distinct<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>)

Возвращает отдельные элементы из последовательности с помощью указанного IEqualityComparer<T> для сравнения значений.

Distinct<TSource>(IEnumerable<TSource>)

Возвращает отдельные элементы из последовательности с помощью сравнения значений по умолчанию.

DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Возвращает отдельные элементы из последовательности в соответствии с указанной функцией селектора ключей и с помощью указанного средства сравнения ключей.

DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Возвращает отдельные элементы из последовательности в соответствии с указанной функцией селектора ключей.

ElementAt<TSource>(IEnumerable<TSource>, Index)

Возвращает элемент по указанному индексу в последовательности.

ElementAt<TSource>(IEnumerable<TSource>, Int32)

Возвращает элемент по указанному индексу в последовательности.

ElementAtOrDefault<TSource>(IEnumerable<TSource>, Index)

Возвращает элемент по указанному индексу в последовательности или значении по умолчанию, если индекс выходит из диапазона.

ElementAtOrDefault<TSource>(IEnumerable<TSource>, Int32)

Возвращает элемент по указанному индексу в последовательности или значении по умолчанию, если индекс выходит из диапазона.

Elements<T>(IEnumerable<T>, XName)

Возвращает отфильтрованную коллекцию дочерних элементов каждого элемента и документа в исходной коллекции. В коллекцию включены только элементы с соответствующими XName.

Elements<T>(IEnumerable<T>)

Возвращает коллекцию дочерних элементов каждого элемента и документа в исходной коллекции.

Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)

Создает различие набора двух последовательностей с помощью указанного IEqualityComparer<T> для сравнения значений.

Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

Создает различие набора двух последовательностей с помощью сравнения значений по умолчанию.

ExceptBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Создает разницу набора двух последовательностей в соответствии с указанной функцией селектора ключей.

ExceptBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>)

Создает разницу набора двух последовательностей в соответствии с указанной функцией селектора ключей.

First<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Возвращает первый элемент в последовательности, удовлетворяющей указанному условию.

First<TSource>(IEnumerable<TSource>)

Возвращает первый элемент последовательности.

FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource)

Возвращает первый элемент последовательности, удовлетворяющий условию, или заданное значение по умолчанию, если такой элемент не найден.

FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Возвращает первый элемент последовательности, удовлетворяющий условию или значению по умолчанию, если такой элемент не найден.

FirstOrDefault<TSource>(IEnumerable<TSource>, TSource)

Возвращает первый элемент последовательности или указанное значение по умолчанию, если последовательность не содержит элементов.

FirstOrDefault<TSource>(IEnumerable<TSource>)

Возвращает первый элемент последовательности или значение по умолчанию, если последовательность не содержит элементов.

GetValueOrDefault<TKey,TValue>(IReadOnlyDictionary<TKey,TValue>, TKey, TValue)

Пытается получить значение, связанное с указанным key в поле dictionary.

GetValueOrDefault<TKey,TValue>(IReadOnlyDictionary<TKey,TValue>, TKey)

Пытается получить значение, связанное с указанным key в поле dictionary.

GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>, TResult>, IEqualityComparer<TKey>)

Группирует элементы последовательности в соответствии с указанной функцией селектора ключей и создает значение результата из каждой группы и его ключа. Ключевые значения сравниваются с помощью указанного средства сравнения, а элементы каждой группы проецируются с помощью указанной функции.

GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>,TResult>)

Группирует элементы последовательности в соответствии с указанной функцией селектора ключей и создает значение результата из каждой группы и его ключа. Элементы каждой группы проецируются с помощью указанной функции.

GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

Группируйте элементы последовательности в соответствии с функцией селектора ключей. Ключи сравниваются с помощью средства сравнения, а элементы каждой группы проецируются с помощью указанной функции.

GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)

Группируйте элементы последовательности в соответствии с указанной функцией селектора ключей и проектируйте элементы для каждой группы с помощью указанной функции.

GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>, IEqualityComparer<TKey>)

Группирует элементы последовательности в соответствии с указанной функцией селектора ключей и создает значение результата из каждой группы и его ключа. Ключи сравниваются с помощью указанного средства сравнения.

GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>)

Группирует элементы последовательности в соответствии с указанной функцией селектора ключей и создает значение результата из каждой группы и его ключа.

GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Группирует элементы последовательности в соответствии с указанной функцией селектора ключей и сравнивает ключи с помощью указанного средства сравнения.

GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Группируйте элементы последовательности в соответствии с указанной функцией селектора ключей.

GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>)

Сопоставляет элементы двух последовательностей на основе равенства ключей и группирует результаты. Для сравнения ключей используется указанный IEqualityComparer<T>.

GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>)

Сопоставляет элементы двух последовательностей на основе равенства ключей и группирует результаты. Средство сравнения равенства по умолчанию используется для сравнения ключей.

Index<TSource>(IEnumerable<TSource>)

Возвращает перечисление, которое включает индекс элемента в кортеж.

InDocumentOrder<T>(IEnumerable<T>)

Возвращает коллекцию узлов, содержащих все узлы в исходной коллекции, отсортированные в порядке документа.

Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)

Создает набор пересечения двух последовательностей с помощью указанного IEqualityComparer<T> для сравнения значений.

Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

Создает набор пересечения двух последовательностей с помощью сравнения значений по умолчанию.

IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Создает пересечение набора двух последовательностей в соответствии с указанной функцией селектора ключей.

IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>)

Создает пересечение набора двух последовательностей в соответствии с указанной функцией селектора ключей.

Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>, IEqualityComparer<TKey>)

Сопоставляет элементы двух последовательностей на основе соответствующих ключей. Для сравнения ключей используется указанный IEqualityComparer<T>.

Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>)

Сопоставляет элементы двух последовательностей на основе соответствующих ключей. Средство сравнения равенства по умолчанию используется для сравнения ключей.

Last<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Возвращает последний элемент последовательности, удовлетворяющей указанному условию.

Last<TSource>(IEnumerable<TSource>)

Возвращает последний элемент последовательности.

LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource)

Возвращает последний элемент последовательности, удовлетворяющей условию, или заданное значение по умолчанию, если такой элемент не найден.

LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Возвращает последний элемент последовательности, удовлетворяющей условию или значению по умолчанию, если такой элемент не найден.

LastOrDefault<TSource>(IEnumerable<TSource>, TSource)

Возвращает последний элемент последовательности или указанное значение по умолчанию, если последовательность не содержит элементов.

LastOrDefault<TSource>(IEnumerable<TSource>)

Возвращает последний элемент последовательности или значение по умолчанию, если последовательность не содержит элементов.

LeftJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>, IEqualityComparer<TKey>)

Сопоставляет элементы двух последовательностей на основе соответствующих ключей. Для сравнения ключей используется указанный IEqualityComparer<T>.

LeftJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>)

Сопоставляет элементы двух последовательностей на основе соответствующих ключей. Средство сравнения равенства по умолчанию используется для сравнения ключей.

LongCount<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Возвращает Int64, представляющий количество элементов в последовательности, удовлетворяющих условию.

LongCount<TSource>(IEnumerable<TSource>)

Возвращает Int64, представляющую общее количество элементов в последовательности.

Max<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>)

Вызывает функцию преобразования для каждого элемента универсальной последовательности и возвращает максимальное результирующее значение.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Decimal.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Double.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Int32.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Int64.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимально допустимое значение null Decimal.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимально допустимое значение null Double.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимально допустимое значение null Int32.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимально допустимое значение null Int64.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимально допустимое значение null Single.

Max<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Single.

Max<TSource>(IEnumerable<TSource>, IComparer<TSource>)

Возвращает максимальное значение в универсальной последовательности.

Max<TSource>(IEnumerable<TSource>)

Возвращает максимальное значение в универсальной последовательности.

MaxBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)

Возвращает максимальное значение в универсальной последовательности в соответствии с указанной функцией селектора ключей и компратором ключей.

MaxBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Возвращает максимальное значение в универсальной последовательности в соответствии с указанной функцией селектора ключей.

Min<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>)

Вызывает функцию преобразования для каждого элемента универсальной последовательности и возвращает минимальное результирующее значение.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Decimal.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Double.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Int32.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Int64.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение, допускающее значение null Decimal.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение, допускающее значение null Double.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение, допускающее значение null Int32.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение, допускающее значение null Int64.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение, допускающее значение null Single.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Single.

Min<TSource>(IEnumerable<TSource>, IComparer<TSource>)

Возвращает минимальное значение в универсальной последовательности.

Min<TSource>(IEnumerable<TSource>)

Возвращает минимальное значение в универсальной последовательности.

MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)

Возвращает минимальное значение в универсальной последовательности в соответствии с указанной функцией селектора ключей и компратером ключей.

MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Возвращает минимальное значение в универсальной последовательности в соответствии с указанной функцией селектора ключей.

Nodes<T>(IEnumerable<T>)

Возвращает коллекцию дочерних узлов каждого документа и элемента в исходной коллекции.

OfType<TResult>(IEnumerable)

Фильтрует элементы IEnumerable на основе указанного типа.

Order<T>(IEnumerable<T>, IComparer<T>)

Сортирует элементы последовательности в порядке возрастания.

Order<T>(IEnumerable<T>)

Сортирует элементы последовательности в порядке возрастания.

OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)

Сортирует элементы последовательности в порядке возрастания с помощью указанного сравнения.

OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Сортирует элементы последовательности в порядке возрастания в соответствии с ключом.

OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>)

Сортирует элементы последовательности в порядке убывания с помощью указанного сравнения.

OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Сортирует элементы последовательности в порядке убывания в соответствии с ключом.

OrderDescending<T>(IEnumerable<T>, IComparer<T>)

Сортирует элементы последовательности в порядке убывания.

OrderDescending<T>(IEnumerable<T>)

Сортирует элементы последовательности в порядке убывания.

Prepend<TSource>(IEnumerable<TSource>, TSource)

Добавляет значение в начало последовательности.

Remove<T>(IEnumerable<T>)

Удаляет каждый узел в исходной коллекции из родительского узла.

Remove<TKey,TValue>(IDictionary<TKey,TValue>, TKey, TValue)

Пытается удалить значение с указанным key из него dictionary.

Reverse<TSource>(IEnumerable<TSource>)

Инвертирует порядок элементов в последовательности.

RightJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>, IEqualityComparer<TKey>)

Сопоставляет элементы двух последовательностей на основе соответствующих ключей. Для сравнения ключей используется указанный IEqualityComparer<T>.

RightJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>)

Сопоставляет элементы двух последовательностей на основе соответствующих ключей. Средство сравнения равенства по умолчанию используется для сравнения ключей.

Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,TResult>)

Проектируйте каждый элемент последовательности в новую форму, включив индекс элемента.

Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>)

Проектируйте каждый элемент последовательности в новую форму.

SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>)

Проектирует каждый элемент последовательности в IEnumerable<T>, сглаживает полученные последовательности в одну последовательность и вызывает функцию селектора результатов для каждого элемента.

SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>)

Проектирует каждый элемент последовательности в IEnumerable<T>, сглаживает полученные последовательности в одну последовательность и вызывает функцию селектора результатов для каждого элемента. Индекс каждого исходного элемента используется в промежуточной проецированной форме этого элемента.

SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TResult>>)

Проектирует каждый элемент последовательности в IEnumerable<T> и преобразует полученные последовательности в одну последовательность.

SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TResult>>)

Проектирует каждый элемент последовательности в IEnumerable<T>, а результирующий последовательности — в одну последовательность. Индекс каждого исходного элемента используется в проецируемых формах этого элемента.

SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)

Определяет, равны ли две последовательности, сравнивая их элементы с помощью указанной IEqualityComparer<T>.

SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

Определяет, равны ли две последовательности путем сравнения элементов с помощью средства сравнения равенства по умолчанию для их типа.

Shuffle<TSource>(IEnumerable<TSource>)

Перемешивание порядка элементов последовательности.

Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Возвращает единственный элемент последовательности, удовлетворяющей указанному условию, и создает исключение, если существует несколько таких элементов.

Single<TSource>(IEnumerable<TSource>)

Возвращает единственный элемент последовательности и создает исключение, если в последовательности нет ни одного элемента.

SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource)

Возвращает единственный элемент последовательности, удовлетворяющей указанному условию, или заданное значение по умолчанию, если такой элемент отсутствует; Этот метод создает исключение, если несколько элементов удовлетворяют условию.

SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Возвращает единственный элемент последовательности, удовлетворяющий указанному условию или значению по умолчанию, если такой элемент не существует; Этот метод создает исключение, если несколько элементов удовлетворяют условию.

SingleOrDefault<TSource>(IEnumerable<TSource>, TSource)

Возвращает единственный элемент последовательности или указанное значение по умолчанию, если последовательность пуста; этот метод создает исключение, если в последовательности существует несколько элементов.

SingleOrDefault<TSource>(IEnumerable<TSource>)

Возвращает единственный элемент последовательности или значение по умолчанию, если последовательность пуста; этот метод создает исключение, если в последовательности существует несколько элементов.

Skip<TSource>(IEnumerable<TSource>, Int32)

Проходит указанное число элементов в последовательности, а затем возвращает оставшиеся элементы.

SkipLast<TSource>(IEnumerable<TSource>, Int32)

Возвращает новую перечисленную коллекцию, содержащую элементы из source последних count элементов исходной коллекции, опущенной.

SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Обход элементов последовательности до тех пор, пока указанное условие имеет значение true, а затем возвращает оставшиеся элементы.

SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>)

Обход элементов последовательности до тех пор, пока указанное условие имеет значение true, а затем возвращает оставшиеся элементы. Индекс элемента используется в логике функции предиката.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Вычисляет сумму последовательности значений Decimal, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Вычисляет сумму последовательности значений Double, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Вычисляет сумму последовательности значений Int32, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Вычисляет сумму последовательности значений Int64, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Вычисляет сумму последовательности значений, допускающих значение NULL, Decimal, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Вычисляет сумму последовательности значений, допускающих значение NULL, Double, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Вычисляет сумму последовательности значений, допускающих значение NULL, Int32, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Вычисляет сумму последовательности значений, допускающих значение NULL, Int64, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Вычисляет сумму последовательности значений, допускающих значение NULL, Single, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

Вычисляет сумму последовательности значений Single, полученных путем вызова функции преобразования для каждого элемента входной последовательности.

Take<TSource>(IEnumerable<TSource>, Int32)

Возвращает указанное число смежных элементов из начала последовательности.

Take<TSource>(IEnumerable<TSource>, Range)

Возвращает указанный диапазон смежных элементов из последовательности.

TakeLast<TSource>(IEnumerable<TSource>, Int32)

Возвращает новую перечисленную коллекцию, содержащую последние count элементы из source.

TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Возвращает элементы из последовательности до тех пор, пока указанное условие имеет значение true.

TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>)

Возвращает элементы из последовательности до тех пор, пока указанное условие имеет значение true. Индекс элемента используется в логике функции предиката.

ToArray<TSource>(IEnumerable<TSource>)

Создает массив из IEnumerable<T>.

ToAsyncEnumerable<TSource>(IEnumerable<TSource>)

Создает новое IAsyncEnumerable<T> , которое выполняет итерацию source.

ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

Создает Dictionary<TKey,TValue> из IEnumerable<T> в соответствии с указанной функцией селектора ключей, компратором и функцией селектора элементов.

ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)

Создает Dictionary<TKey,TValue> из IEnumerable<T> в соответствии с указанными функциями селектора ключей и селектора элементов.

ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Создает Dictionary<TKey,TValue> из IEnumerable<T> в соответствии с указанной функцией селектора ключей и компратором ключей.

ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Создает Dictionary<TKey,TValue> из IEnumerable<T> в соответствии с указанной функцией селектора ключей.

ToFrozenDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

Создает FrozenDictionary<TKey,TValue> из IEnumerable<T> в соответствии с указанными функциями селектора ключей и селектора элементов.

ToFrozenDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Создает из FrozenDictionary<TKey,TValue> указанной функции селектора ключей IEnumerable<T> .

ToFrozenSet<T>(IEnumerable<T>, IEqualityComparer<T>)

Создает объект FrozenSet<T> с указанными значениями.

ToHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>)

Создает HashSet<T> из IEnumerable<T> с помощью comparer для сравнения ключей.

ToHashSet<TSource>(IEnumerable<TSource>)

Создает HashSet<T> из IEnumerable<T>.

ToImmutableArray<TSource>(IEnumerable<TSource>)

Создает неизменяемый массив из указанной коллекции.

ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>, IEqualityComparer<TValue>)

Перечисляет и преобразует последовательность и создает неизменяемый словарь его содержимого с помощью указанных средств сравнения ключей и значений.

ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>)

Перечисляет и преобразует последовательность и создает неизменяемый словарь его содержимого с помощью указанного средства сравнения ключей.

ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>)

Перечисляет и преобразует последовательность и создает неизменяемый словарь его содержимого.

ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Создает неизменяемый словарь на основе некоторого преобразования последовательности.

ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Создает неизменяемый словарь из существующей коллекции элементов, применяя функцию преобразования к исходным ключам.

ToImmutableHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>)

Перечисляет последовательность, создает неизменяемый хэш-набор его содержимого и использует указанный средство сравнения равенства для типа набора.

ToImmutableHashSet<TSource>(IEnumerable<TSource>)

Перечисляет последовательность и создает неизменяемый хэш-набор его содержимого.

ToImmutableList<TSource>(IEnumerable<TSource>)

Перечисляет последовательность и создает неизменяемый список его содержимого.

ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>, IEqualityComparer<TValue>)

Перечисляет и преобразует последовательность и создает неизменяемый отсортированный словарь его содержимого с помощью указанных средств сравнения ключей и значений.

ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>)

Перечисляет и преобразует последовательность и создает неизменяемый отсортированный словарь его содержимого с помощью указанного средства сравнения ключей.

ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>)

Перечисляет и преобразует последовательность и создает неизменяемый отсортированный словарь его содержимого.

ToImmutableSortedSet<TSource>(IEnumerable<TSource>, IComparer<TSource>)

Перечисляет последовательность, создает неизменяемый отсортированный набор его содержимого и использует указанный сопоставитель.

ToImmutableSortedSet<TSource>(IEnumerable<TSource>)

Перечисляет последовательность и создает неизменяемый отсортированный набор его содержимого.

ToList<TSource>(IEnumerable<TSource>)

Создает List<T> из IEnumerable<T>.

ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

Создает Lookup<TKey,TElement> из IEnumerable<T> в соответствии с указанной функцией селектора ключей, компратором и функцией селектора элементов.

ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)

Создает Lookup<TKey,TElement> из IEnumerable<T> в соответствии с указанными функциями селектора ключей и селектора элементов.

ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Создает Lookup<TKey,TElement> из IEnumerable<T> в соответствии с указанной функцией селектора ключей и компратором ключей.

ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Создает Lookup<TKey,TElement> из IEnumerable<T> в соответствии с указанной функцией селектора ключей.

TryAdd<TKey,TValue>(IDictionary<TKey,TValue>, TKey, TValue)

Пытается добавить указанный key и value в нее dictionary.

TryGetNonEnumeratedCount<TSource>(IEnumerable<TSource>, Int32)

Пытается определить количество элементов в последовательности без принудительного перечисления.

Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)

Создает объединение наборов двух последовательностей с помощью указанного IEqualityComparer<T>.

Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>)

Создает объединение наборов двух последовательностей с помощью средства сравнения равенства по умолчанию.

UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Создает объединение наборов двух последовательностей в соответствии с указанной функцией селектора ключей.

UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>)

Создает объединение наборов двух последовательностей в соответствии с указанной функцией селектора ключей.

Where<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Фильтрует последовательность значений на основе предиката.

Where<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>)

Фильтрует последовательность значений на основе предиката. Индекс каждого элемента используется в логике функции предиката.

Zip<TFirst,TSecond,TResult>(IEnumerable<TFirst>, IEnumerable<TSecond>, Func<TFirst,TSecond,TResult>)

Применяет указанную функцию к соответствующим элементам двух последовательностей, создавая последовательность результатов.

Zip<TFirst,TSecond,TThird>(IEnumerable<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>)

Создает последовательность кортежей с элементами из трех указанных последовательностей.

Zip<TFirst,TSecond>(IEnumerable<TFirst>, IEnumerable<TSecond>)

Создает последовательность кортежей с элементами из двух указанных последовательностей.

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

Потокобезопасность

Общедоступные статические (Shared в Visual Basic) элементы этого типа являются потокобезопасны. Никакие члены экземпляра не гарантированы как потокобезопасные.

Можно SortedList<TKey,TValue> одновременно поддерживать несколько читателей, если коллекция не изменяется. Даже поэтому перечисление через коллекцию по сути не является потокобезопасной процедурой. Чтобы гарантировать безопасность потоков во время перечисления, можно заблокировать коллекцию во время всего перечисления. Чтобы разрешить доступ к коллекции несколькими потоками для чтения и записи, необходимо реализовать собственную синхронизацию.

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