Partager via


Dictionary<TKey,TValue> Classe

Définition

Représente une collection de clés et de valeurs.

generic <typename TKey, typename TValue>
public ref class Dictionary : 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 Dictionary : 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::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
generic <typename TKey, typename TValue>
public ref class Dictionary : 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::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
public class Dictionary<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
public class Dictionary<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.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
[System.Runtime.InteropServices.ComVisible(false)]
[System.Serializable]
public class Dictionary<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.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
[System.Runtime.InteropServices.ComVisible(false)]
[System.Serializable]
public class Dictionary<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.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
type Dictionary<'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
type Dictionary<'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
    interface IDeserializationCallback
    interface ISerializable
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Serializable>]
type Dictionary<'Key, 'Value> = class
    interface IDictionary<'Key, 'Value>
    interface ICollection<KeyValuePair<'Key, 'Value>>
    interface seq<KeyValuePair<'Key, 'Value>>
    interface IDictionary
    interface ICollection
    interface IEnumerable
    interface ISerializable
    interface IDeserializationCallback
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Serializable>]
type Dictionary<'Key, 'Value> = class
    interface IDictionary<'Key, 'Value>
    interface ICollection<KeyValuePair<'Key, 'Value>>
    interface IDictionary
    interface ICollection
    interface IReadOnlyDictionary<'Key, 'Value>
    interface IReadOnlyCollection<KeyValuePair<'Key, 'Value>>
    interface seq<KeyValuePair<'Key, 'Value>>
    interface IEnumerable
    interface ISerializable
    interface IDeserializationCallback
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Serializable>]
type Dictionary<'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>>
    interface ISerializable
    interface IDeserializationCallback
type Dictionary<'Key, 'Value> = class
    interface IDictionary<'Key, 'Value>
    interface ICollection<KeyValuePair<'Key, 'Value>>
    interface IReadOnlyDictionary<'Key, 'Value>
    interface IReadOnlyCollection<KeyValuePair<'Key, 'Value>>
    interface seq<KeyValuePair<'Key, 'Value>>
    interface IDictionary
    interface ICollection
    interface IEnumerable
Public Class Dictionary(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 Dictionary(Of TKey, TValue)
Implements ICollection(Of KeyValuePair(Of TKey, TValue)), IDeserializationCallback, IDictionary, IDictionary(Of TKey, TValue), IEnumerable(Of KeyValuePair(Of TKey, TValue)), IReadOnlyCollection(Of KeyValuePair(Of TKey, TValue)), IReadOnlyDictionary(Of TKey, TValue), ISerializable
Public Class Dictionary(Of TKey, TValue)
Implements ICollection(Of KeyValuePair(Of TKey, TValue)), IDeserializationCallback, IDictionary, IDictionary(Of TKey, TValue), IEnumerable(Of KeyValuePair(Of TKey, TValue)), ISerializable

Paramètres de type

TKey

Type des clés dans le dictionnaire.

TValue

Type des valeurs dans le dictionnaire.

Héritage
Dictionary<TKey,TValue>
Dérivé
Attributs
Implémente

Exemples

L’exemple de code suivant crée une Dictionary<TKey,TValue> vide de chaînes avec des clés de chaîne et utilise la méthode Add pour ajouter des éléments. L’exemple montre que la méthode Add lève une ArgumentException lors de la tentative d’ajout d’une clé en double.

L’exemple utilise la propriété Item[] (l’indexeur en C#) pour récupérer des valeurs, démontrant qu’une KeyNotFoundException est levée lorsqu’une clé demandée n’est pas présente et indique que la valeur associée à une clé peut être remplacée.

L’exemple montre comment utiliser la méthode TryGetValue comme moyen plus efficace de récupérer des valeurs si un programme doit souvent essayer des valeurs clés qui ne figurent pas dans le dictionnaire, et montre comment utiliser la méthode ContainsKey pour tester si une clé existe avant d’appeler la méthode Add.

L’exemple montre comment énumérer les clés et les valeurs dans le dictionnaire et comment énumérer les clés et les valeurs seules à l’aide de la propriété Keys et de la propriété Values.

Enfin, l’exemple illustre la méthode Remove.

using namespace System;
using namespace System::Collections::Generic;

public ref class Example
{
public:
    static void Main()
    {
        // Create a new dictionary of strings, with string keys.
        //
        Dictionary<String^, String^>^ openWith =
            gcnew Dictionary<String^, String^>();

        // Add some elements to the dictionary. 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 dictionary.
        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 dictionary.
        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 dictionary, TryGetValue can be a more efficient
        // way to retrieve values.
        String^ value = "";
        if (openWith->TryGetValue("tif", 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 dictionary elements,
        // the elements are retrieved as KeyValuePair objects.
        Console::WriteLine();
        for each( 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.
        Dictionary<String^, String^>::ValueCollection^ valueColl =
            openWith->Values;

        // The elements of the ValueCollection are strongly typed
        // with the type that was specified for dictionary values.
        Console::WriteLine();
        for each( String^ s in valueColl )
        {
            Console::WriteLine("Value = {0}", s);
        }

        // To get the keys alone, use the Keys property.
        Dictionary<String^, String^>::KeyCollection^ keyColl =
            openWith->Keys;

        // The elements of the KeyCollection are strongly typed
        // with the type that was specified for dictionary keys.
        Console::WriteLine();
        for each( String^ s in keyColl )
        {
            Console::WriteLine("Key = {0}", s);
        }

        // 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.");
        }
    }
};

int main()
{
    Example::Main();
}

/* 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 = txt, Value = notepad.exe
Key = bmp, Value = paint.exe
Key = dib, Value = paint.exe
Key = rtf, Value = winword.exe
Key = doc, Value = winword.exe
Key = ht, Value = hypertrm.exe

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

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

Remove("doc")
Key "doc" is not found.
 */
// Create a new dictionary of strings, with string keys.
//
Dictionary<string, string> openWith =
    new Dictionary<string, string>();

// Add some elements to the dictionary. 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 dictionary.
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 dictionary.
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 dictionary, 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 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);
}

// To get the values alone, use the Values property.
Dictionary<string, string>.ValueCollection valueColl =
    openWith.Values;

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

// To get the keys alone, use the Keys property.
Dictionary<string, string>.KeyCollection keyColl =
    openWith.Keys;

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

// 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 = txt, Value = notepad.exe
Key = bmp, Value = paint.exe
Key = dib, Value = paint.exe
Key = rtf, Value = winword.exe
Key = doc, Value = winword.exe
Key = ht, Value = hypertrm.exe

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

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

Remove("doc")
Key "doc" is not found.
*/
// Create a new dictionary of strings, with string keys.
let openWith = Dictionary<string, string>()

// Add some elements to the dictionary. 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 dictionary.
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 dictionary.
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 dictionary, TryGetValue can be a more efficient
// way to retrieve values.
match openWith.TryGetValue "tif" with
| true, value -> printfn $"For key = \"tif\", value = {value}."
| _ -> printfn "Key = \"tif\" is not found."

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

// When you use foreach to enumerate dictionary elements,
// the elements are retrieved as KeyValuePair objects.
printfn ""

for kvp in openWith do
    printfn $"Key = {kvp.Key}, Value = {kvp.Value}"

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

// The elements of the ValueCollection are strongly typed
// with the type that was specified for dictionary values.
printfn ""

for s in valueColl do
    printfn $"Value = {s}"

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

// The elements of the KeyCollection are strongly typed
// with the type that was specified for dictionary keys.
printfn ""

for s in keyColl do
    printfn $"Key = {s}"

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

if openWith.ContainsKey "doc" |> not 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 = txt, Value = notepad.exe
//     Key = bmp, Value = paint.exe
//     Key = dib, Value = paint.exe
//     Key = rtf, Value = winword.exe
//     Key = doc, Value = winword.exe
//     Key = ht, Value = hypertrm.exe
//
//     Value = notepad.exe
//     Value = paint.exe
//     Value = paint.exe
//     Value = winword.exe
//     Value = winword.exe
//     Value = hypertrm.exe
//
//     Key = txt
//     Key = bmp
//     Key = dib
//     Key = rtf
//     Key = doc
//     Key = ht
//
//     Remove("doc")
//     Key "doc" is not found.
Imports System.Collections.Generic

Public Class Example
    
    Public Shared Sub Main() 

        ' Create a new dictionary of strings, with string keys.
        '
        Dim openWith As New Dictionary(Of String, String)
        
        ' Add some elements to the dictionary. 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 dictionary.
        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 dictionary.
        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 dictionary, 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 dictionary 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 valueColl As _
            Dictionary(Of String, String).ValueCollection = _
            openWith.Values
        
        ' The elements of the ValueCollection are strongly typed
        ' with the type that was specified for dictionary values.
        Console.WriteLine()
        For Each s As String In  valueColl
            Console.WriteLine("Value = {0}", s)
        Next s

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

        ' 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 = txt, Value = notepad.exe
'Key = bmp, Value = paint.exe
'Key = dib, Value = paint.exe
'Key = rtf, Value = winword.exe
'Key = doc, Value = winword.exe
'Key = ht, Value = hypertrm.exe
'
'Value = notepad.exe
'Value = paint.exe
'Value = paint.exe
'Value = winword.exe
'Value = winword.exe
'Value = hypertrm.exe
'
'Key = txt
'Key = bmp
'Key = dib
'Key = rtf
'Key = doc
'Key = ht
'
'Remove("doc")
'Key "doc" is not found.
'

Remarques

La classe générique Dictionary<TKey,TValue> fournit un mappage d’un ensemble de clés à un ensemble de valeurs. Chaque ajout au dictionnaire se compose d’une valeur et de sa clé associée. La récupération d’une valeur à l’aide de sa clé est très rapide, proche de O(1), car la classe Dictionary<TKey,TValue> est implémentée en tant que table de hachage.

Note

La vitesse de récupération dépend de la qualité de l’algorithme de hachage du type spécifié pour TKey.

Tant qu’un objet est utilisé comme clé dans le Dictionary<TKey,TValue>, il ne doit pas changer d’une manière qui affecte sa valeur de hachage. Chaque clé d’un Dictionary<TKey,TValue> doit être unique en fonction du comparateur d’égalité du dictionnaire. Une clé ne peut pas être null, mais une valeur peut être, si son type TValue est un type référence.

Dictionary<TKey,TValue> nécessite une implémentation d’égalité pour déterminer si les clés sont égales. Vous pouvez spécifier une implémentation de l’interface générique IEqualityComparer<T> à l’aide d’un constructeur qui accepte un paramètre comparer ; si vous ne spécifiez pas d’implémentation, le comparateur d’égalité générique par défaut EqualityComparer<T>.Default est utilisé. Si le type TKey implémente l’interface générique System.IEquatable<T>, le comparateur d’égalité par défaut utilise cette implémentation.

Note

Par exemple, vous pouvez utiliser les comparateurs de chaînes ne respectant pas la casse fournis par la classe StringComparer pour créer des dictionnaires avec des clés de chaîne ne respectant pas la casse.

La capacité d’un Dictionary<TKey,TValue> est le nombre d’éléments que le Dictionary<TKey,TValue> peut contenir. À mesure que les éléments sont ajoutés à un Dictionary<TKey,TValue>, la capacité est automatiquement augmentée en réaffectant le tableau interne.

.NET Framework uniquement : Pour les objets Dictionary<TKey,TValue> très volumineux, vous pouvez augmenter la capacité maximale à 2 milliards d’éléments sur un système 64 bits en définissant l’attribut enabled de l’élément de configuration <gcAllowVeryLargeObjects> sur true dans l’environnement d’exécution.

À des fins d’énumération, chaque élément du dictionnaire est traité comme une structure KeyValuePair<TKey,TValue> représentant une valeur et sa clé. L’ordre dans lequel les éléments sont retournés n’est pas défini.

L’instruction foreach du langage C# (for each en C++, For Each en Visual Basic) retourne un objet du type des éléments de la collection. Étant donné que le Dictionary<TKey,TValue> est une collection de clés et de valeurs, le type d’élément n’est pas le type de la clé ou le type de la valeur. Au lieu de cela, le type d’élément est un KeyValuePair<TKey,TValue> du type de clé et du type valeur. Par exemple:

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

L’instruction foreach est un wrapper autour de l’énumérateur, qui permet uniquement la lecture à partir de la collection, et non l’écriture dans celle-ci.

Note

Étant donné que les clés peuvent être héritées et leur comportement a changé, leur unicité absolue ne peut pas être garantie par des comparaisons à l’aide de la méthode Equals.

Constructeurs

Dictionary<TKey,TValue>()

Initialise une nouvelle instance de la classe Dictionary<TKey,TValue> vide, a la capacité initiale par défaut et utilise le comparateur d’égalité par défaut pour le type de clé.

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

Initialise une nouvelle instance de la classe Dictionary<TKey,TValue> qui contient des éléments copiés à partir du IDictionary<TKey,TValue> spécifié et utilise le comparateur d’égalité par défaut pour le type de clé.

Dictionary<TKey,TValue>(IDictionary<TKey,TValue>, IEqualityComparer<TKey>)

Initialise une nouvelle instance de la classe Dictionary<TKey,TValue> qui contient des éléments copiés à partir du IDictionary<TKey,TValue> spécifié et utilise le IEqualityComparer<T>spécifié.

Dictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>)

Initialise une nouvelle instance de la classe Dictionary<TKey,TValue> qui contient des éléments copiés à partir du IEnumerable<T>spécifié.

Dictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)

Initialise une nouvelle instance de la classe Dictionary<TKey,TValue> qui contient des éléments copiés à partir du IEnumerable<T> spécifié et utilise le IEqualityComparer<T>spécifié.

Dictionary<TKey,TValue>(IEqualityComparer<TKey>)

Initialise une nouvelle instance de la classe Dictionary<TKey,TValue> vide, a la capacité initiale par défaut et utilise la IEqualityComparer<T>spécifiée.

Dictionary<TKey,TValue>(Int32)

Initialise une nouvelle instance de la classe Dictionary<TKey,TValue> vide, a la capacité initiale spécifiée et utilise le comparateur d’égalité par défaut pour le type de clé.

Dictionary<TKey,TValue>(Int32, IEqualityComparer<TKey>)

Initialise une nouvelle instance de la classe Dictionary<TKey,TValue> vide, a la capacité initiale spécifiée et utilise le IEqualityComparer<T>spécifié.

Dictionary<TKey,TValue>(SerializationInfo, StreamingContext)
Obsolète.

Initialise une nouvelle instance de la classe Dictionary<TKey,TValue> avec des données sérialisées.

Propriétés

Capacity

Obtient le nombre total d’éléments que la structure de données interne peut contenir sans redimensionnement.

Comparer

Obtient le IEqualityComparer<T> utilisé pour déterminer l’égalité des clés pour le dictionnaire.

Count

Obtient le nombre de paires clé/valeur contenues dans le Dictionary<TKey,TValue>.

Item[TKey]

Obtient ou définit la valeur associée à la clé spécifiée.

Keys

Obtient une collection contenant les clés dans le Dictionary<TKey,TValue>.

Values

Obtient une collection contenant les valeurs de l'Dictionary<TKey,TValue>.

Méthodes

Add(TKey, TValue)

Ajoute la clé et la valeur spécifiées au dictionnaire.

Clear()

Supprime toutes les clés et valeurs du Dictionary<TKey,TValue>.

ContainsKey(TKey)

Détermine si le Dictionary<TKey,TValue> contient la clé spécifiée.

ContainsValue(TValue)

Détermine si le Dictionary<TKey,TValue> contient une valeur spécifique.

EnsureCapacity(Int32)

Garantit que le dictionnaire peut contenir jusqu’à un nombre spécifié d’entrées sans extension supplémentaire de son stockage de stockage.

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetEnumerator()

Retourne un énumérateur qui itère au sein du Dictionary<TKey,TValue>.

GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetObjectData(SerializationInfo, StreamingContext)
Obsolète.

Implémente l’interface ISerializable et retourne les données nécessaires pour sérialiser l’instance Dictionary<TKey,TValue>.

GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
OnDeserialization(Object)

Implémente l’interface ISerializable et déclenche l’événement de désérialisation lorsque la désérialisation est terminée.

Remove(TKey)

Supprime la valeur avec la clé spécifiée de l'Dictionary<TKey,TValue>.

Remove(TKey, TValue)

Supprime la valeur avec la clé spécifiée du Dictionary<TKey,TValue>et copie l’élément dans le paramètre value.

ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)
TrimExcess()

Définit la capacité de ce dictionnaire sur ce qu’il serait s’il avait été initialisé à l’origine avec toutes ses entrées.

TrimExcess(Int32)

Définit la capacité de ce dictionnaire à contenir un nombre spécifié d’entrées sans extension supplémentaire de son stockage de stockage.

TryAdd(TKey, TValue)

Tente d’ajouter la clé et la valeur spécifiées au dictionnaire.

TryGetValue(TKey, TValue)

Obtient la valeur associée à la clé spécifiée.

Implémentations d’interfaces explicites

ICollection.CopyTo(Array, Int32)

Copie les éléments du ICollection<T> dans un tableau, en commençant à l’index de tableau spécifié.

ICollection.IsSynchronized

Obtient une valeur qui indique si l’accès au ICollection est synchronisé (thread safe).

ICollection.SyncRoot

Obtient un objet qui peut être utilisé pour synchroniser l’accès au ICollection.

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

Ajoute la valeur spécifiée au ICollection<T> avec la clé spécifiée.

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

Détermine si le ICollection<T> contient une clé et une valeur spécifiques.

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

Copie les éléments du ICollection<T> dans un tableau de type KeyValuePair<TKey,TValue>, en commençant à l’index de tableau spécifié.

ICollection<KeyValuePair<TKey,TValue>>.IsReadOnly

Obtient une valeur qui indique si le dictionnaire est en lecture seule.

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

Supprime une clé et une valeur du dictionnaire.

IDictionary.Add(Object, Object)

Ajoute la clé et la valeur spécifiées au dictionnaire.

IDictionary.Contains(Object)

Détermine si le IDictionary contient un élément avec la clé spécifiée.

IDictionary.GetEnumerator()

Retourne un IDictionaryEnumerator pour le IDictionary.

IDictionary.IsFixedSize

Obtient une valeur qui indique si le IDictionary a une taille fixe.

IDictionary.IsReadOnly

Obtient une valeur qui indique si la IDictionary est en lecture seule.

IDictionary.Item[Object]

Obtient ou définit la valeur avec la clé spécifiée.

IDictionary.Keys

Obtient une ICollection contenant les clés du IDictionary.

IDictionary.Remove(Object)

Supprime l’élément avec la clé spécifiée de l'IDictionary.

IDictionary.Values

Obtient une ICollection contenant les valeurs dans le IDictionary.

IDictionary<TKey,TValue>.Keys

Obtient une ICollection<T> contenant les clés du IDictionary<TKey,TValue>.

IDictionary<TKey,TValue>.Values

Obtient une ICollection<T> contenant les valeurs dans le IDictionary<TKey,TValue>.

IEnumerable.GetEnumerator()

Retourne un énumérateur qui itère dans la collection.

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

Retourne un énumérateur qui itère dans la collection.

IReadOnlyDictionary<TKey,TValue>.Keys

Obtient une collection contenant les clés du IReadOnlyDictionary<TKey,TValue>.

IReadOnlyDictionary<TKey,TValue>.Values

Obtient une collection contenant les valeurs de l'IReadOnlyDictionary<TKey,TValue>.

Méthodes d’extension

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

Crée un FrozenDictionary<TKey,TValue> à partir d’un IEnumerable<T> en fonction de la fonction de sélecteur de clé spécifiée.

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

Crée un FrozenDictionary<TKey,TValue> à partir d’un IEnumerable<T> en fonction des fonctions de sélecteur de clé et de sélecteur d’élément spécifiées.

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

Crée un FrozenSet<T> avec les valeurs spécifiées.

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

Renvoie un wrapper ReadOnlyDictionary<TKey,TValue> en lecture seule pour le dictionnaire actuel.

GetAlternateLookup<TKey,TValue,TAlternateKey>(Dictionary<TKey,TValue>)

Représente une collection de clés et de valeurs.

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

Tente d’obtenir la valeur associée au key spécifié dans la dictionary.

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

Tente d’obtenir la valeur associée au key spécifié dans la dictionary.

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

Tente de supprimer la valeur avec le key spécifié du dictionary.

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

Tente d’ajouter les key et les value spécifiés au dictionary.

TryGetAlternateLookup<TKey,TValue,TAlternateKey>(Dictionary<TKey,TValue>, Dictionary<TKey,TValue>.AlternateLookup<TAlternateKey>)

Représente une collection de clés et de valeurs.

ToImmutableArray<TSource>(IEnumerable<TSource>)

Crée un tableau immuable à partir de la collection spécifiée.

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

Construit un dictionnaire immuable à partir d’une collection existante d’éléments, en appliquant une fonction de transformation aux clés sources.

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

Construit un dictionnaire immuable basé sur une transformation d’une séquence.

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

Énumère et transforme une séquence et produit un dictionnaire immuable de son contenu.

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

Énumère et transforme une séquence et produit un dictionnaire immuable de son contenu à l’aide du comparateur de clés spécifié.

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

Énumère et transforme une séquence et produit un dictionnaire immuable de son contenu à l’aide des comparateurs de clé et de valeur spécifiés.

ToImmutableHashSet<TSource>(IEnumerable<TSource>)

Énumère une séquence et produit un ensemble de hachage immuable de son contenu.

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

Énumère une séquence, produit un jeu de hachage immuable de son contenu et utilise le comparateur d’égalité spécifié pour le type set.

ToImmutableList<TSource>(IEnumerable<TSource>)

Énumère une séquence et produit une liste immuable de son contenu.

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

Énumère et transforme une séquence et produit un dictionnaire trié immuable de son contenu.

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

Énumère et transforme une séquence et produit un dictionnaire trié immuable de son contenu à l’aide du comparateur de clés spécifié.

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

Énumère et transforme une séquence et produit un dictionnaire trié immuable de son contenu à l’aide des comparateurs de clé et de valeur spécifiés.

ToImmutableSortedSet<TSource>(IEnumerable<TSource>)

Énumère une séquence et produit un ensemble trié immuable de son contenu.

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

Énumère une séquence, produit un ensemble trié immuable de son contenu et utilise le comparateur spécifié.

CopyToDataTable<T>(IEnumerable<T>)

Renvoie un DataTable qui contient des copies des objets DataRow, en fonction d’un objet IEnumerable<T> d’entrée où le paramètre générique T est DataRow.

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

Copie DataRow objets dans le DataTablespécifié, en fonction d’un objet IEnumerable<T> d’entrée où le paramètre générique T est DataRow.

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

Copie DataRow objets dans le DataTablespécifié, en fonction d’un objet IEnumerable<T> d’entrée où le paramètre générique T est DataRow.

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

Applique une fonction d’accumulation sur une séquence.

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

Applique une fonction d’accumulation sur une séquence. La valeur initiale spécifiée est utilisée comme valeur d’accumulation initiale.

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

Applique une fonction d’accumulation sur une séquence. La valeur initiale spécifiée est utilisée comme valeur d’accumulation initiale et la fonction spécifiée est utilisée pour sélectionner la valeur de résultat.

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

Représente une collection de clés et de valeurs.

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

Représente une collection de clés et de valeurs.

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

Détermine si tous les éléments d’une séquence répondent à une condition.

Any<TSource>(IEnumerable<TSource>)

Détermine si une séquence contient des éléments.

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

Détermine si un élément d’une séquence satisfait à une condition.

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

Ajoute une valeur à la fin de la séquence.

AsEnumerable<TSource>(IEnumerable<TSource>)

Retourne l’entrée typée en tant que IEnumerable<T>.

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

Calcule la moyenne d’une séquence de valeurs Decimal obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la moyenne d’une séquence de valeurs Double obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la moyenne d’une séquence de valeurs Int32 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la moyenne d’une séquence de valeurs Int64 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la moyenne d’une séquence de valeurs nullables Decimal obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la moyenne d’une séquence de valeurs nullables Double obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la moyenne d’une séquence de valeurs nullables Int32 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la moyenne d’une séquence de valeurs nullables Int64 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la moyenne d’une séquence de valeurs nullables Single obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la moyenne d’une séquence de valeurs Single obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

Cast<TResult>(IEnumerable)

Convertit les éléments d’un IEnumerable en type spécifié.

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

Fractionne les éléments d’une séquence en blocs de taille au plus size.

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

Concatène deux séquences.

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

Détermine si une séquence contient un élément spécifié à l’aide du comparateur d’égalité par défaut.

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

Détermine si une séquence contient un élément spécifié à l’aide d’un IEqualityComparer<T>spécifié.

Count<TSource>(IEnumerable<TSource>)

Retourne le nombre d’éléments d’une séquence.

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

Retourne un nombre qui représente le nombre d’éléments de la séquence spécifiée qui répondent à une condition.

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

Représente une collection de clés et de valeurs.

DefaultIfEmpty<TSource>(IEnumerable<TSource>)

Retourne les éléments de la séquence spécifiée ou la valeur par défaut du paramètre de type dans une collection singleton si la séquence est vide.

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

Retourne les éléments de la séquence spécifiée ou la valeur spécifiée dans une collection singleton si la séquence est vide.

Distinct<TSource>(IEnumerable<TSource>)

Retourne des éléments distincts d’une séquence à l’aide du comparateur d’égalité par défaut pour comparer les valeurs.

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

Retourne des éléments distincts d’une séquence à l’aide d’un IEqualityComparer<T> spécifié pour comparer les valeurs.

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

Retourne des éléments distincts d’une séquence en fonction d’une fonction de sélecteur de clé spécifiée.

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

Retourne des éléments distincts d’une séquence en fonction d’une fonction de sélecteur de clé spécifiée et à l’aide d’un comparateur spécifié pour comparer les clés.

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

Retourne l’élément à un index spécifié dans une séquence.

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

Retourne l’élément à un index spécifié dans une séquence.

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

Retourne l’élément à un index spécifié dans une séquence ou une valeur par défaut si l’index est hors plage.

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

Retourne l’élément à un index spécifié dans une séquence ou une valeur par défaut si l’index est hors plage.

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

Produit la différence de jeu de deux séquences à l’aide du comparateur d’égalité par défaut pour comparer les valeurs.

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

Produit la différence de jeu de deux séquences à l’aide de la IEqualityComparer<T> spécifiée pour comparer les valeurs.

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

Produit la différence de jeu de deux séquences en fonction d’une fonction de sélecteur de clé spécifiée.

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

Produit la différence de jeu de deux séquences en fonction d’une fonction de sélecteur de clé spécifiée.

First<TSource>(IEnumerable<TSource>)

Retourne le premier élément d’une séquence.

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

Retourne le premier élément d’une séquence qui satisfait à une condition spécifiée.

FirstOrDefault<TSource>(IEnumerable<TSource>)

Retourne le premier élément d’une séquence ou une valeur par défaut si la séquence ne contient aucun élément.

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

Retourne le premier élément d’une séquence ou une valeur par défaut spécifiée si la séquence ne contient aucun élément.

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

Retourne le premier élément de la séquence qui satisfait à une condition ou une valeur par défaut si aucun élément de ce type n’est trouvé.

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

Retourne le premier élément de la séquence qui satisfait à une condition ou une valeur par défaut spécifiée si aucun élément de ce type n’est trouvé.

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

Regroupe les éléments d’une séquence en fonction d’une fonction de sélecteur de clé spécifiée.

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

Regroupe les éléments d’une séquence en fonction d’une fonction de sélecteur de clé spécifiée et compare les clés à l’aide d’un comparateur spécifié.

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

Regroupe les éléments d’une séquence en fonction d’une fonction de sélecteur de clé spécifiée et projette les éléments pour chaque groupe à l’aide d’une fonction spécifiée.

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

Regroupe les éléments d’une séquence en fonction d’une fonction de sélecteur de clé. Les clés sont comparées à l’aide d’un comparateur et les éléments de chaque groupe sont projetés à l’aide d’une fonction spécifiée.

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

Regroupe les éléments d’une séquence en fonction d’une fonction de sélecteur de clé spécifiée et crée une valeur de résultat à partir de chaque groupe et de sa clé.

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

Regroupe les éléments d’une séquence en fonction d’une fonction de sélecteur de clé spécifiée et crée une valeur de résultat à partir de chaque groupe et de sa clé. Les clés sont comparées à l’aide d’un comparateur spécifié.

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

Regroupe les éléments d’une séquence en fonction d’une fonction de sélecteur de clé spécifiée et crée une valeur de résultat à partir de chaque groupe et de sa clé. Les éléments de chaque groupe sont projetés à l’aide d’une fonction spécifiée.

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

Regroupe les éléments d’une séquence en fonction d’une fonction de sélecteur de clé spécifiée et crée une valeur de résultat à partir de chaque groupe et de sa clé. Les valeurs de clé sont comparées à l’aide d’un comparateur spécifié et les éléments de chaque groupe sont projetés à l’aide d’une fonction spécifiée.

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

Met en corrélation les éléments de deux séquences en fonction de l’égalité des clés et regroupe les résultats. Le comparateur d’égalité par défaut est utilisé pour comparer les clés.

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

Met en corrélation les éléments de deux séquences en fonction de l’égalité des clés et regroupe les résultats. Une IEqualityComparer<T> spécifiée est utilisée pour comparer les clés.

Index<TSource>(IEnumerable<TSource>)

Retourne une énumérable qui incorpore l’index de l’élément dans un tuple.

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

Produit l’intersection définie de deux séquences à l’aide du comparateur d’égalité par défaut pour comparer les valeurs.

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

Produit l’intersection définie de deux séquences à l’aide de la IEqualityComparer<T> spécifiée pour comparer les valeurs.

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

Produit l’intersection définie de deux séquences en fonction d’une fonction de sélecteur de clé spécifiée.

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

Produit l’intersection définie de deux séquences en fonction d’une fonction de sélecteur de clé spécifiée.

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

Met en corrélation les éléments de deux séquences en fonction des clés correspondantes. Le comparateur d’égalité par défaut est utilisé pour comparer les clés.

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

Met en corrélation les éléments de deux séquences en fonction des clés correspondantes. Une IEqualityComparer<T> spécifiée est utilisée pour comparer les clés.

Last<TSource>(IEnumerable<TSource>)

Retourne le dernier élément d’une séquence.

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

Retourne le dernier élément d’une séquence qui satisfait à une condition spécifiée.

LastOrDefault<TSource>(IEnumerable<TSource>)

Retourne le dernier élément d’une séquence ou une valeur par défaut si la séquence ne contient aucun élément.

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

Retourne le dernier élément d’une séquence ou une valeur par défaut spécifiée si la séquence ne contient aucun élément.

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

Retourne le dernier élément d’une séquence qui satisfait à une condition ou une valeur par défaut si aucun élément de ce type n’est trouvé.

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

Retourne le dernier élément d’une séquence qui satisfait à une condition ou une valeur par défaut spécifiée si aucun élément de ce type n’est trouvé.

LongCount<TSource>(IEnumerable<TSource>)

Retourne un Int64 qui représente le nombre total d’éléments d’une séquence.

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

Retourne une Int64 qui représente le nombre d’éléments d’une séquence qui répondent à une condition.

Max<TSource>(IEnumerable<TSource>)

Retourne la valeur maximale dans une séquence générique.

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

Retourne la valeur maximale dans une séquence générique.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur maximale Decimal.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur maximale Double.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur maximale Int32.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur maximale Int64.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur de Decimal nullable maximale.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur de Double nullable maximale.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur de Int32 nullable maximale.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur de Int64 nullable maximale.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur de Single nullable maximale.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur maximale Single.

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

Appelle une fonction de transformation sur chaque élément d’une séquence générique et retourne la valeur maximale résultante.

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

Retourne la valeur maximale dans une séquence générique en fonction d’une fonction de sélecteur de clé spécifiée.

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

Retourne la valeur maximale dans une séquence générique en fonction d’une fonction de sélecteur de clé et d’un comparateur de clés spécifiés.

Min<TSource>(IEnumerable<TSource>)

Retourne la valeur minimale dans une séquence générique.

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

Retourne la valeur minimale dans une séquence générique.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur minimale Decimal.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur minimale Double.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur minimale Int32.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur minimale Int64.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur de Decimal nullable minimale.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur de Double nullable minimale.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur de Int32 nullable minimale.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur de Int64 nullable minimale.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur de Single nullable minimale.

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

Appelle une fonction de transformation sur chaque élément d’une séquence et retourne la valeur minimale Single.

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

Appelle une fonction de transformation sur chaque élément d’une séquence générique et retourne la valeur minimale résultante.

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

Retourne la valeur minimale dans une séquence générique en fonction d’une fonction de sélecteur de clé spécifiée.

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

Retourne la valeur minimale dans une séquence générique en fonction d’une fonction de sélecteur de clé et d’un comparateur de clés spécifiés.

OfType<TResult>(IEnumerable)

Filtre les éléments d’une IEnumerable en fonction d’un type spécifié.

Order<T>(IEnumerable<T>)

Trie les éléments d’une séquence dans l’ordre croissant.

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

Trie les éléments d’une séquence dans l’ordre croissant.

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

Trie les éléments d’une séquence dans l’ordre croissant en fonction d’une clé.

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

Trie les éléments d’une séquence dans l’ordre croissant à l’aide d’un comparateur spécifié.

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

Trie les éléments d’une séquence dans l’ordre décroissant en fonction d’une clé.

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

Trie les éléments d’une séquence dans l’ordre décroissant à l’aide d’un comparateur spécifié.

OrderDescending<T>(IEnumerable<T>)

Trie les éléments d’une séquence dans l’ordre décroissant.

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

Trie les éléments d’une séquence dans l’ordre décroissant.

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

Ajoute une valeur au début de la séquence.

Reverse<TSource>(IEnumerable<TSource>)

Inverse l’ordre des éléments dans une séquence.

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

Projette chaque élément d’une séquence dans un nouveau formulaire.

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

Projette chaque élément d’une séquence dans un nouveau formulaire en incorporant l’index de l’élément.

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

Projette chaque élément d’une séquence vers une IEnumerable<T> et aplatit les séquences obtenues en une seule séquence.

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

Projette chaque élément d’une séquence dans une IEnumerable<T>et aplatit les séquences obtenues en une seule séquence. L’index de chaque élément source est utilisé sous la forme projetée de cet élément.

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

Projette chaque élément d’une séquence vers une IEnumerable<T>, aplatit les séquences obtenues en une seule séquence et appelle une fonction de sélecteur de résultats sur chaque élément dans celui-ci.

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

Projette chaque élément d’une séquence vers une IEnumerable<T>, aplatit les séquences obtenues en une seule séquence et appelle une fonction de sélecteur de résultats sur chaque élément dans celui-ci. L’index de chaque élément source est utilisé dans la forme projetée intermédiaire de cet élément.

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

Détermine si deux séquences sont égales en comparant les éléments à l’aide du comparateur d’égalité par défaut pour leur type.

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

Détermine si deux séquences sont égales en comparant leurs éléments à l’aide d’un IEqualityComparer<T>spécifié.

Single<TSource>(IEnumerable<TSource>)

Retourne le seul élément d’une séquence et lève une exception s’il n’y a pas exactement un élément dans la séquence.

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

Retourne le seul élément d’une séquence qui satisfait à une condition spécifiée et lève une exception si plusieurs éléments de ce type existent.

SingleOrDefault<TSource>(IEnumerable<TSource>)

Retourne le seul élément d’une séquence ou une valeur par défaut si la séquence est vide ; cette méthode lève une exception s’il existe plusieurs éléments dans la séquence.

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

Retourne le seul élément d’une séquence ou une valeur par défaut spécifiée si la séquence est vide ; cette méthode lève une exception s’il existe plusieurs éléments dans la séquence.

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

Retourne le seul élément d’une séquence qui satisfait à une condition spécifiée ou à une valeur par défaut s’il n’existe aucun élément de ce type ; cette méthode lève une exception si plusieurs éléments répondent à la condition.

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

Retourne le seul élément d’une séquence qui satisfait à une condition spécifiée ou une valeur par défaut spécifiée s’il n’existe aucun élément de ce type ; cette méthode lève une exception si plusieurs éléments répondent à la condition.

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

Contourne un nombre spécifié d’éléments dans une séquence, puis retourne les éléments restants.

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

Retourne une nouvelle collection énumérable qui contient les éléments de source avec les derniers éléments count de la collection source omis.

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

Contourne les éléments d’une séquence tant qu’une condition spécifiée est vraie, puis retourne les éléments restants.

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

Contourne les éléments d’une séquence tant qu’une condition spécifiée est vraie, puis retourne les éléments restants. L’index de l’élément est utilisé dans la logique de la fonction de prédicat.

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

Calcule la somme de la séquence de valeurs Decimal obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la somme de la séquence de valeurs Double obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la somme de la séquence de valeurs Int32 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la somme de la séquence de valeurs Int64 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la somme de la séquence de valeurs nullables Decimal obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la somme de la séquence de valeurs nullables Double obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la somme de la séquence de valeurs nullables Int32 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la somme de la séquence de valeurs nullables Int64 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la somme de la séquence de valeurs nullables Single obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Calcule la somme de la séquence de valeurs Single obtenues en appelant une fonction de transformation sur chaque élément de la séquence d’entrée.

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

Retourne un nombre spécifié d’éléments contigus à partir du début d’une séquence.

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

Retourne une plage spécifiée d’éléments contigus à partir d’une séquence.

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

Retourne une nouvelle collection énumérable qui contient les derniers éléments count de source.

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

Retourne des éléments d’une séquence tant qu’une condition spécifiée est vraie.

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

Retourne des éléments d’une séquence tant qu’une condition spécifiée est vraie. L’index de l’élément est utilisé dans la logique de la fonction de prédicat.

ToArray<TSource>(IEnumerable<TSource>)

Crée un tableau à partir d’un IEnumerable<T>.

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

Crée un Dictionary<TKey,TValue> à partir d’un IEnumerable<T> en fonction d’une fonction de sélecteur de clé spécifiée.

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

Crée un Dictionary<TKey,TValue> à partir d’un IEnumerable<T> en fonction d’une fonction de sélecteur de clé et d’un comparateur de clés spécifiés.

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

Crée un Dictionary<TKey,TValue> à partir d’un IEnumerable<T> en fonction des fonctions de sélecteur de clé et de sélecteur d’élément spécifiées.

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

Crée une Dictionary<TKey,TValue> à partir d’un IEnumerable<T> en fonction d’une fonction de sélecteur de clé spécifiée, d’un comparateur et d’une fonction de sélecteur d’élément.

ToHashSet<TSource>(IEnumerable<TSource>)

Crée un HashSet<T> à partir d’un IEnumerable<T>.

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

Crée un HashSet<T> à partir d’un IEnumerable<T> à l’aide de l'comparer pour comparer les clés.

ToList<TSource>(IEnumerable<TSource>)

Crée un List<T> à partir d’un IEnumerable<T>.

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

Crée un Lookup<TKey,TElement> à partir d’un IEnumerable<T> en fonction d’une fonction de sélecteur de clé spécifiée.

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

Crée un Lookup<TKey,TElement> à partir d’un IEnumerable<T> en fonction d’une fonction de sélecteur de clé et d’un comparateur de clés spécifiés.

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

Crée un Lookup<TKey,TElement> à partir d’un IEnumerable<T> en fonction des fonctions de sélecteur de clé et de sélecteur d’élément spécifiées.

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

Crée un Lookup<TKey,TElement> à partir d’un IEnumerable<T> en fonction d’une fonction de sélecteur de clé spécifiée, d’un comparateur et d’une fonction de sélecteur d’élément.

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

Tente de déterminer le nombre d’éléments d’une séquence sans forcer une énumération.

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

Produit l’union définie de deux séquences à l’aide du comparateur d’égalité par défaut.

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

Produit l’union définie de deux séquences à l’aide d’une IEqualityComparer<T>spécifiée.

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

Produit l’union définie de deux séquences en fonction d’une fonction de sélecteur de clé spécifiée.

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

Produit l’union définie de deux séquences en fonction d’une fonction de sélecteur de clé spécifiée.

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

Filtre une séquence de valeurs basée sur un prédicat.

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

Filtre une séquence de valeurs basée sur un prédicat. L’index de chaque élément est utilisé dans la logique de la fonction de prédicat.

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

Produit une séquence de tuples avec des éléments des deux séquences spécifiées.

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

Produit une séquence de tuples avec des éléments des trois séquences spécifiées.

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

Applique une fonction spécifiée aux éléments correspondants de deux séquences, produisant une séquence des résultats.

AsParallel(IEnumerable)

Active la parallélisation d’une requête.

AsParallel<TSource>(IEnumerable<TSource>)

Active la parallélisation d’une requête.

AsQueryable(IEnumerable)

Convertit un IEnumerable en IQueryable.

AsQueryable<TElement>(IEnumerable<TElement>)

Convertit un IEnumerable<T> générique en IQueryable<T>générique.

Ancestors<T>(IEnumerable<T>)

Retourne une collection d’éléments qui contient les ancêtres de chaque nœud de la collection source.

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

Retourne une collection filtrée d’éléments qui contient les ancêtres de chaque nœud de la collection source. Seuls les éléments qui ont un XName correspondant sont inclus dans la collection.

DescendantNodes<T>(IEnumerable<T>)

Retourne une collection des nœuds descendants de chaque document et élément de la collection source.

Descendants<T>(IEnumerable<T>)

Retourne une collection d’éléments qui contient les éléments descendants de chaque élément et document de la collection source.

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

Retourne une collection filtrée d’éléments qui contient les éléments descendants de chaque élément et document de la collection source. Seuls les éléments qui ont un XName correspondant sont inclus dans la collection.

Elements<T>(IEnumerable<T>)

Retourne une collection des éléments enfants de chaque élément et document de la collection source.

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

Retourne une collection filtrée des éléments enfants de chaque élément et document de la collection source. Seuls les éléments qui ont un XName correspondant sont inclus dans la collection.

InDocumentOrder<T>(IEnumerable<T>)

Retourne une collection de nœuds qui contient tous les nœuds de la collection source, triées dans l’ordre des documents.

Nodes<T>(IEnumerable<T>)

Retourne une collection des nœuds enfants de chaque document et élément de la collection source.

Remove<T>(IEnumerable<T>)

Supprime chaque nœud de la collection source de son nœud parent.

S’applique à

Cohérence de thread

Une Dictionary<TKey,TValue> peut prendre en charge plusieurs lecteurs simultanément, tant que la collection n’est pas modifiée. Même si l’énumération par le biais d’une collection n’est pas intrinsèquement une procédure thread-safe. Dans le cas rare où une énumération fait face à des accès en écriture, la collection doit être verrouillée pendant toute l’énumération. Pour permettre à la collection d’accéder à plusieurs threads pour la lecture et l’écriture, vous devez implémenter votre propre synchronisation.

Pour connaître les alternatives thread-safe, consultez la classe ConcurrentDictionary<TKey,TValue> ou la classe ImmutableDictionary<TKey,TValue>.

Les membres statiques publics (Shared en Visual Basic) de ce type sont thread safe.

Voir aussi