ArraySegment<T> Структура
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет границы фрагмента одномерного массива.
generic <typename T>
public value class ArraySegment : System::Collections::Generic::ICollection<T>, System::Collections::Generic::IEnumerable<T>, System::Collections::Generic::IList<T>, System::Collections::Generic::IReadOnlyCollection<T>, System::Collections::Generic::IReadOnlyList<T>
generic <typename T>
public value class ArraySegment
public struct ArraySegment<T> : System.Collections.Generic.ICollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IList<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.Generic.IReadOnlyList<T>
public readonly struct ArraySegment<T> : System.Collections.Generic.ICollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IList<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.Generic.IReadOnlyList<T>
[System.Serializable]
public struct ArraySegment<T>
[System.Serializable]
public struct ArraySegment<T> : System.Collections.Generic.ICollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IList<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.Generic.IReadOnlyList<T>
type ArraySegment<'T> = struct
interface ICollection<'T>
interface seq<'T>
interface IEnumerable
interface IList<'T>
interface IReadOnlyCollection<'T>
interface IReadOnlyList<'T>
[<System.Serializable>]
type ArraySegment<'T> = struct
[<System.Serializable>]
type ArraySegment<'T> = struct
interface IList<'T>
interface ICollection<'T>
interface IReadOnlyList<'T>
interface IReadOnlyCollection<'T>
interface seq<'T>
interface IEnumerable
[<System.Serializable>]
type ArraySegment<'T> = struct
interface IList<'T>
interface ICollection<'T>
interface seq<'T>
interface IEnumerable
interface IReadOnlyList<'T>
interface IReadOnlyCollection<'T>
type ArraySegment<'T> = struct
interface IList<'T>
interface ICollection<'T>
interface IReadOnlyList<'T>
interface IReadOnlyCollection<'T>
interface seq<'T>
interface IEnumerable
Public Structure ArraySegment(Of T)
Implements ICollection(Of T), IEnumerable(Of T), IList(Of T), IReadOnlyCollection(Of T), IReadOnlyList(Of T)
Public Structure ArraySegment(Of T)
Параметры типа
- T
Тип элементов во фрагменте массива.
- Наследование
- Атрибуты
- Реализации
Примеры
В следующем примере кода структура передается ArraySegment<T> в метод .
using namespace System;
namespace Sample
{
public ref class SampleArray
{
public:
static void Work()
{
// Create and initialize a new string array.
array <String^>^ words = {"The", "quick", "brown",
"fox", "jumps", "over", "the", "lazy", "dog"};
// Display the initial contents of the array.
Console::WriteLine("The first array segment"
" (with all the array's elements) contains:");
PrintIndexAndValues(words);
// Define an array segment that contains the entire array.
ArraySegment<String^> segment(words);
// Display the contents of the ArraySegment.
Console::WriteLine("The first array segment"
" (with all the array's elements) contains:");
PrintIndexAndValues(segment);
// Define an array segment that contains the middle five
// values of the array.
ArraySegment<String^> middle(words, 2, 5);
// Display the contents of the ArraySegment.
Console::WriteLine("The second array segment"
" (with the middle five elements) contains:");
PrintIndexAndValues(middle);
// Modify the fourth element of the first array
// segment
segment.Array[3] = "LION";
// Display the contents of the second array segment
// middle. Note that the value of its second element
// also changed.
Console::WriteLine("After the first array segment"
" is modified,the second array segment"
" now contains:");
PrintIndexAndValues(middle);
Console::ReadLine();
}
static void PrintIndexAndValues(ArraySegment<String^>^ segment)
{
for (int i = segment->Offset;
i < (segment->Offset + segment->Count); i++)
{
Console::WriteLine(" [{0}] : {1}", i,
segment->Array[i]);
}
Console::WriteLine();
}
static void PrintIndexAndValues(array<String^>^ words)
{
for (int i = 0; i < words->Length; i++)
{
Console::WriteLine(" [{0}] : {1}", i,
words[i]);
}
Console::WriteLine();
}
};
}
int main()
{
Sample::SampleArray::Work();
return 0;
}
/*
This code produces the following output.
The original array initially contains:
[0] : The
[1] : quick
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
[7] : lazy
[8] : dog
The first array segment (with all the array's elements) contains:
[0] : The
[1] : quick
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
[7] : lazy
[8] : dog
The second array segment (with the middle five elements) contains:
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
After the first array segment is modified, the second array segment now contains:
[2] : brown
[3] : LION
[4] : jumps
[5] : over
[6] : the
*/
using System;
public class SamplesArray {
public static void Main() {
// Create and initialize a new string array.
String[] myArr = { "The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog" };
// Display the initial contents of the array.
Console.WriteLine( "The original array initially contains:" );
PrintIndexAndValues( myArr );
// Define an array segment that contains the entire array.
ArraySegment<string> myArrSegAll = new ArraySegment<string>( myArr );
// Display the contents of the ArraySegment.
Console.WriteLine( "The first array segment (with all the array's elements) contains:" );
PrintIndexAndValues( myArrSegAll );
// Define an array segment that contains the middle five values of the array.
ArraySegment<string> myArrSegMid = new ArraySegment<string>( myArr, 2, 5 );
// Display the contents of the ArraySegment.
Console.WriteLine( "The second array segment (with the middle five elements) contains:" );
PrintIndexAndValues( myArrSegMid );
// Modify the fourth element of the first array segment myArrSegAll.
myArrSegAll.Array[3] = "LION";
// Display the contents of the second array segment myArrSegMid.
// Note that the value of its second element also changed.
Console.WriteLine( "After the first array segment is modified, the second array segment now contains:" );
PrintIndexAndValues( myArrSegMid );
}
public static void PrintIndexAndValues( ArraySegment<string> arrSeg ) {
for ( int i = arrSeg.Offset; i < (arrSeg.Offset + arrSeg.Count); i++ ) {
Console.WriteLine( " [{0}] : {1}", i, arrSeg.Array[i] );
}
Console.WriteLine();
}
public static void PrintIndexAndValues( String[] myArr ) {
for ( int i = 0; i < myArr.Length; i++ ) {
Console.WriteLine( " [{0}] : {1}", i, myArr[i] );
}
Console.WriteLine();
}
}
/*
This code produces the following output.
The original array initially contains:
[0] : The
[1] : quick
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
[7] : lazy
[8] : dog
The first array segment (with all the array's elements) contains:
[0] : The
[1] : quick
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
[7] : lazy
[8] : dog
The second array segment (with the middle five elements) contains:
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
After the first array segment is modified, the second array segment now contains:
[2] : brown
[3] : LION
[4] : jumps
[5] : over
[6] : the
*/
open System
// Print functions.
let printIndexAndValues (myArr: string []) =
for i = 0 to myArr.Length - 1 do
printfn $" [{i}] : {myArr[i]}"
printfn ""
let printIndexAndValuesSeg (arrSeg: ArraySegment<string>) =
for i = arrSeg.Offset to arrSeg.Offset + arrSeg.Count - 1 do
printfn $" [{i}] : {arrSeg.Array[i]}"
printfn ""
// Create and initialize a new string array.
let myArr = [| "The"; "quick"; "brown"; "fox"; "jumps"; "over"; "the"; "lazy"; "dog" |]
// Display the initial contents of the array.
printfn "The original array initially contains:"
printIndexAndValues myArr
// Define an array segment that contains the entire array.
let myArrSegAll = ArraySegment<string>(myArr)
// Display the contents of the ArraySegment.
printfn "The first array segment (with all the array's elements) contains:"
printIndexAndValuesSeg myArrSegAll
// Define an array segment that contains the middle five values of the array.
let myArrSegMid = ArraySegment<string>(myArr, 2, 5)
// Display the contents of the ArraySegment.
printfn "The second array segment (with the middle five elements) contains:"
printIndexAndValuesSeg myArrSegMid
// Modify the fourth element of the first array segment myArrSegAll.
myArrSegAll.Array[3] <- "LION"
// Display the contents of the second array segment myArrSegMid.
// Note that the value of its second element also changed.
printfn "After the first array segment is modified, the second array segment now contains:"
printIndexAndValuesSeg myArrSegMid
(*
This code produces the following output.
The original array initially contains:
[0] : The
[1] : quick
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
[7] : lazy
[8] : dog
The first array segment (with all the array's elements) contains:
[0] : The
[1] : quick
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
[7] : lazy
[8] : dog
The second array segment (with the middle five elements) contains:
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
After the first array segment is modified, the second array segment now contains:
[2] : brown
[3] : LION
[4] : jumps
[5] : over
[6] : the
*)
Public Class SamplesArray
Public Shared Sub Main()
' Create and initialize a new string array.
Dim myArr As String() = {"The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog"}
' Display the initial contents of the array.
Console.WriteLine("The original array initially contains:")
PrintIndexAndValues(myArr)
' Define an array segment that contains the entire array.
Dim myArrSegAll As New ArraySegment(Of String)(myArr)
' Display the contents of the ArraySegment.
Console.WriteLine("The first array segment (with all the array's elements) contains:")
PrintIndexAndValues(myArrSegAll)
' Define an array segment that contains the middle five values of the array.
Dim myArrSegMid As New ArraySegment(Of String)(myArr, 2, 5)
' Display the contents of the ArraySegment.
Console.WriteLine("The second array segment (with the middle five elements) contains:")
PrintIndexAndValues(myArrSegMid)
' Modify the fourth element of the first array segment myArrSegAll.
myArrSegAll.Array(3) = "LION"
' Display the contents of the second array segment myArrSegMid.
' Note that the value of its second element also changed.
Console.WriteLine("After the first array segment is modified, the second array segment now contains:")
PrintIndexAndValues(myArrSegMid)
End Sub
Public Shared Sub PrintIndexAndValues(arrSeg As ArraySegment(Of String))
Dim i As Integer
For i = arrSeg.Offset To (arrSeg.Offset + arrSeg.Count - 1)
Console.WriteLine(" [{0}] : {1}", i, arrSeg.Array(i))
Next i
Console.WriteLine()
End Sub
Public Shared Sub PrintIndexAndValues(myArr as String())
Dim i As Integer
For i = 0 To (myArr.Length - 1)
Console.WriteLine(" [{0}] : {1}", i, myArr(i))
Next i
Console.WriteLine()
End Sub
End Class
'This code produces the following output.
'
'The original array initially contains:
' [0] : The
' [1] : quick
' [2] : brown
' [3] : fox
' [4] : jumps
' [5] : over
' [6] : the
' [7] : lazy
' [8] : dog
'
'The first array segment (with all the array's elements) contains:
' [0] : The
' [1] : quick
' [2] : brown
' [3] : fox
' [4] : jumps
' [5] : over
' [6] : the
' [7] : lazy
' [8] : dog
'
'The second array segment (with the middle five elements) contains:
' [2] : brown
' [3] : fox
' [4] : jumps
' [5] : over
' [6] : the
'
'After the first array segment is modified, the second array segment now contains:
' [2] : brown
' [3] : LION
' [4] : jumps
' [5] : over
' [6] : the
Комментарии
ArraySegment<T> — это оболочка вокруг массива, разделяющая диапазон элементов в этом массиве. Несколько ArraySegment<T> экземпляров могут ссылаться на один и тот же исходный массив и могут перекрываться. Исходный массив должен быть одномерным и иметь индексирование от нуля.
Примечание
ArraySegment<T>IReadOnlyCollection<T> реализует интерфейс, начиная с платформа .NET Framework 4.6; в предыдущих версиях платформа .NET Framework ArraySegment<T> структура не реализовывал этот интерфейс.
Структура ArraySegment<T> полезна всякий раз, когда элементы массива будут обрабатываться в отдельных сегментах. Пример:
Вы можете передать ArraySegment<T> объект, представляющий только часть массива, в качестве аргумента методу, а не вызывать относительно ресурсоемкий метод, например Copy для передачи копии части массива.
В многопоточных приложениях можно использовать структуру ArraySegment<T> , чтобы каждый поток работал только с частью массива.
Для асинхронных операций на основе задач можно использовать ArraySegment<T> объект , чтобы убедиться, что каждая задача работает с отдельным сегментом массива. В следующем примере массив делится на отдельные сегменты, состоящие из десяти элементов. Каждый элемент в сегменте умножается на его номер сегмента. Результат показывает, что использование ArraySegment<T> класса для управления элементами таким образом изменяет значения базового массива.
using System; using System.Collections.Generic; using System.Threading.Tasks; public class Example { private const int segmentSize = 10; public static async Task Main() { List<Task> tasks = new List<Task>(); // Create array. int[] arr = new int[50]; for (int ctr = 0; ctr <= arr.GetUpperBound(0); ctr++) arr[ctr] = ctr + 1; // Handle array in segments of 10. for (int ctr = 1; ctr <= Math.Ceiling(((double)arr.Length)/segmentSize); ctr++) { int multiplier = ctr; int elements = (multiplier - 1) * 10 + segmentSize > arr.Length ? arr.Length - (multiplier - 1) * 10 : segmentSize; ArraySegment<int> segment = new ArraySegment<int>(arr, (ctr - 1) * 10, elements); tasks.Add(Task.Run( () => { IList<int> list = (IList<int>) segment; for (int index = 0; index < list.Count; index++) list[index] = list[index] * multiplier; } )); } try { await Task.WhenAll(tasks.ToArray()); int elementsShown = 0; foreach (var value in arr) { Console.Write("{0,3} ", value); elementsShown++; if (elementsShown % 18 == 0) Console.WriteLine(); } } catch (AggregateException e) { Console.WriteLine("Errors occurred when working with the array:"); foreach (var inner in e.InnerExceptions) Console.WriteLine("{0}: {1}", inner.GetType().Name, inner.Message); } } } // The example displays the following output: // 1 2 3 4 5 6 7 8 9 10 22 24 26 28 30 32 34 36 // 38 40 63 66 69 72 75 78 81 84 87 90 124 128 132 136 140 144 // 148 152 156 160 205 210 215 220 225 230 235 240 245 250
open System open System.Threading.Tasks // Create array. let arr = Array.init 50 (fun i -> i + 1) // Handle array in segments of 10. let tasks = Array.chunkBySize 10 arr |> Array.mapi (fun m elements -> let mutable segment = ArraySegment<int>(arr, m * 10, elements.Length) task { for i = 0 to segment.Count - 1 do segment[i] <- segment[i] * (m + 1) } :> Task) try Task.WhenAll(tasks).Wait() let mutable i = 0 for value in arr do printf $"{value, 3} " i <- i + 1 if i % 18 = 0 then printfn "" with :? AggregateException as e -> printfn "Errors occurred when working with the array:" for inner in e.InnerExceptions do printfn $"{inner.GetType().Name}: {inner.Message}" // The example displays the following output: // 1 2 3 4 5 6 7 8 9 10 22 24 26 28 30 32 34 36 // 38 40 63 66 69 72 75 78 81 84 87 90 124 128 132 136 140 144 // 148 152 156 160 205 210 215 220 225 230 235 240 245 250
Imports System.Collections.Generic Imports System.Threading.Tasks Module Example Private Const SegmentSize As Integer = 10 Public Sub Main() Dim tasks As New List(Of Task) ' Create array. Dim arr(49) As Integer For ctr As Integer = 0 To arr.GetUpperBound(0) arr(ctr) = ctr + 1 Next ' Handle array in segments of 10. For ctr As Integer = 1 To CInt(Math.Ceiling(arr.Length / segmentSize)) Dim multiplier As Integer = ctr Dim elements As Integer = If((multiplier - 1) * 10 + segmentSize > arr.Length, arr.Length - (multiplier - 1) * 10, segmentSize) Dim segment As New ArraySegment(Of Integer)(arr, (ctr - 1) * 10, elements) tasks.Add(Task.Run( Sub() Dim list As IList(Of Integer) = CType(segment, IList(Of Integer)) For index As Integer = 0 To list.Count - 1 list(index) = list(index) * multiplier Next End Sub )) Next Try Task.WaitAll(tasks.ToArray()) Dim elementsShown As Integer = 0 For Each value In arr Console.Write("{0,3} ", value) elementsShown += 1 If elementsShown Mod 18 = 0 Then Console.WriteLine() Next Catch e As AggregateException Console.WriteLine("Errors occurred when working with the array:") For Each inner As Exception In e.InnerExceptions Console.WriteLine("{0}: {1}", inner.GetType().Name, inner.Message) Next End Try End Sub End Module ' The example displays the following output: ' 1 2 3 4 5 6 7 8 9 10 22 24 26 28 30 32 34 36 ' 38 40 63 66 69 72 75 78 81 84 87 90 124 128 132 136 140 144 ' 148 152 156 160 205 210 215 220 225 230 235 240 245 250
Однако обратите внимание, что хотя структуру ArraySegment<T> можно использовать для разделения массива на отдельные сегменты, сегменты не являются полностью независимыми друг от друга. Свойство Array возвращает весь исходный массив, а не копию массива, поэтому изменения, внесенные в массив, возвращаемый свойством Array , вносятся в исходный массив. Если это нежелательно, следует выполнять операции с копией массива, а не с ArraySegment<T> объектом, представляющим часть массива.
Метод Equals и операторы равенства и неравенства проверяют равенство ссылок при сравнении двух ArraySegment<T> объектов. Чтобы два ArraySegment<T> объекта считались равными, они должны соответствовать всем следующим условиям:
Ссылка на тот же массив.
Начинается с того же индекса в массиве.
Имеют одинаковое количество элементов.
Если вы хотите получить элемент по его индексу в объекте ArraySegment<T> , необходимо привести его к объекту IList<T> и получить или изменить с помощью IList<T>.Item[] свойства . Обратите внимание, что это необязательно в F#. В следующем примере извлекается элемент в объекте ArraySegment<T> , который разделяет раздел массива строк.
using System;
using System.Collections.Generic;
public class Example
{
public static void Main()
{
String[] names = { "Adam", "Bruce", "Charles", "Daniel",
"Ebenezer", "Francis", "Gilbert",
"Henry", "Irving", "John", "Karl",
"Lucian", "Michael" };
var partNames = new ArraySegment<string>(names, 2, 5);
// Cast the ArraySegment object to an IList<string> and enumerate it.
var list = (IList<string>) partNames;
for (int ctr = 0; ctr <= list.Count - 1; ctr++)
Console.WriteLine(list[ctr]);
}
}
// The example displays the following output:
// Charles
// Daniel
// Ebenezer
// Francis
// Gilbert
open System
let names =
[| "Adam"; "Bruce"; "Charles"; "Daniel"
"Ebenezer"; "Francis"; "Gilbert"
"Henry"; "Irving"; "John"; "Karl"
"Lucian"; "Michael" |]
let partNames = ArraySegment<string>(names, 2, 5)
// Enumerate over the ArraySegment object.
for part in partNames do
printfn $"{part}"
// The example displays the following output:
// Charles
// Daniel
// Ebenezer
// Francis
// Gilbert
Imports System.Collections.Generic
Module Example
Public Sub Main()
Dim names() As String = { "Adam", "Bruce", "Charles", "Daniel",
"Ebenezer", "Francis", "Gilbert",
"Henry", "Irving", "John", "Karl",
"Lucian", "Michael" }
Dim partNames As New ArraySegment(Of String)(names, 2, 5)
' Cast the ArraySegment object to an IList<String> and enumerate it.
Dim list = CType(partNames, IList(Of String))
For ctr As Integer = 0 To list.Count - 1
Console.WriteLine(list(ctr))
Next
End Sub
End Module
' The example displays the following output:
' Charles
' Daniel
' Ebenezer
' Francis
' Gilbert
Конструкторы
ArraySegment<T>(T[]) |
Инициализирует новый экземпляр структуры ArraySegment<T>, который задает границы для всех элементов в заданном массиве. |
ArraySegment<T>(T[], Int32, Int32) |
Инициализирует новый экземпляр структуры ArraySegment<T>, который задает границы указанного диапазона элементов в заданном массиве. |
Свойства
Array |
Возвращает исходный массив, который содержит диапазон элементов, находящийся в пределах установленных границ фрагмента массива. |
Count |
Возвращает количество элементов в диапазоне, ограниченном фрагментом массива. |
Empty |
Представляет сегмент пустого массива. Это поле доступно только для чтения. |
Item[Int32] |
Возвращает или задает элемент по указанному индексу. |
Offset |
Возвращает положение первого элемента в диапазоне, ограниченном фрагментом массива, относительно начала исходного массива. |
Методы
CopyTo(ArraySegment<T>) |
Копирует содержимое этого экземпляра в указанный сегмент массива назначения того же типа |
CopyTo(T[]) |
Копирует содержимое этого экземпляра в указанный массив назначения того же типа |
CopyTo(T[], Int32) |
Копирует содержимое этого экземпляра в указанный массив назначения того же типа |
Equals(ArraySegment<T>) |
Определяет, равна ли указанная структура ArraySegment<T> текущему экземпляру. |
Equals(Object) |
Определяет, равен ли указанный объект текущему экземпляру. |
GetEnumerator() |
Возвращает перечислитель, который можно использовать для итерации по сегменту массива. |
GetHashCode() |
Возвращает хэш-код текущего экземпляра. |
Slice(Int32) |
Формирует срез текущего сегмента массива, начиная с указанного индекса. |
Slice(Int32, Int32) |
Формирует срез указанной длины из текущего сегмента массива, начиная с указанного индекса. |
ToArray() |
Копирует содержимое этого сегмента массива в новый массив. |
Операторы
Equality(ArraySegment<T>, ArraySegment<T>) |
Определяет равенство двух структур ArraySegment<T>. |
Implicit(T[] to ArraySegment<T>) |
Определяет неявное преобразование массива типа |
Inequality(ArraySegment<T>, ArraySegment<T>) |
Определяет неравенство двух структур ArraySegment<T>. |
Явные реализации интерфейса
ICollection<T>.Add(T) |
Вызывает исключение NotSupportedException во всех случаях. |
ICollection<T>.Clear() |
Вызывает исключение NotSupportedException во всех случаях. |
ICollection<T>.Contains(T) |
Определяет, содержит ли фрагмент массива указанное значение. |
ICollection<T>.CopyTo(T[], Int32) |
Копирует элементы сегмента массива в массив, начиная с указанного индекса массива. |
ICollection<T>.IsReadOnly |
Возвращает значение, указывающее, доступен ли сегмент массива только для чтения. |
ICollection<T>.Remove(T) |
Вызывает исключение NotSupportedException во всех случаях. |
IEnumerable.GetEnumerator() |
Возвращает перечислитель, выполняющий перебор элементов фрагмента массива. |
IEnumerable<T>.GetEnumerator() |
Возвращает перечислитель, выполняющий перебор элементов фрагмента массива. |
IList<T>.IndexOf(T) |
Определяет индекс конкретного элемента в фрагменте массива. |
IList<T>.Insert(Int32, T) |
Вызывает исключение NotSupportedException во всех случаях. |
IList<T>.Item[Int32] |
Возвращает или задает элемент по указанному индексу. |
IList<T>.RemoveAt(Int32) |
Вызывает исключение NotSupportedException во всех случаях. |
IReadOnlyList<T>.Item[Int32] |
Возвращает элемент по указанному индексу сегмента массива. |
Методы расширения
ToFrozenDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Создает из FrozenDictionary<TKey,TValue> в соответствии с указанной IEnumerable<T> функцией селектора ключей. |
ToFrozenDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Создает словарь FrozenDictionary<TKey,TValue> из объекта IEnumerable<T> в соответствии с заданными функциями селектора ключа и селектора элемента. |
ToFrozenSet<T>(IEnumerable<T>, IEqualityComparer<T>) |
Создает объект FrozenSet<T> с указанными значениями. |
AsReadOnly<T>(IList<T>) |
Возвращает оболочку только ReadOnlyCollection<T> для чтения для указанного списка. |
ToImmutableArray<TSource>(IEnumerable<TSource>) |
Создает неизменяемый массив на основе указанной коллекции. |
ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Создает неизменяемый словарь на основе существующей коллекции элементов, применяя функцию преобразования к исходным ключам. |
ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Создает неизменяемый словарь на основе последовательности, подвергнутой определенному преобразованию. |
ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,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>, IEqualityComparer<TKey>, IEqualityComparer<TValue>) |
Выполняет перечисление и преобразование последовательности и создает на основе ее содержимого неизменяемый словарь с использованием указанных функций сравнения ключей и значений. |
ToImmutableHashSet<TSource>(IEnumerable<TSource>) |
Выполняет перечисление последовательности и создает неизменяемый набор хэширования на основе ее содержимого. |
ToImmutableHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Выполняет перечисление последовательности, создает неизменяемый набор хэширования на основе ее содержимого и использует указанную функцию сравнения для типа набора. |
ToImmutableList<TSource>(IEnumerable<TSource>) |
Выполняет перечисление последовательности и создает неизменяемый список на основе ее содержимого. |
ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,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>, IComparer<TKey>, IEqualityComparer<TValue>) |
Выполняет перечисление и преобразование последовательности и создает на основе ее содержимого неизменяемый отсортированный словарь с использованием указанных функций сравнения ключей и значений. |
ToImmutableSortedSet<TSource>(IEnumerable<TSource>) |
Выполняет перечисление последовательности и создает неизменяемый отсортированный набор на основе ее содержимого. |
ToImmutableSortedSet<TSource>(IEnumerable<TSource>, IComparer<TSource>) |
Выполняет перечисление последовательности, создает неизменяемый отсортированный набор на основе ее содержимого и использует указанную функцию сравнения. |
CopyToDataTable<T>(IEnumerable<T>) |
Возвращает объект DataTable, содержащий копии объектов DataRow при заданном входном объекте IEnumerable<T> и универсальном параметре |
CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) |
Копирует объекты DataRow в указанный объект DataTable с заданным входным объектом IEnumerable<T>, где универсальный параметр |
CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) |
Копирует объекты DataRow в указанный объект DataTable с заданным входным объектом IEnumerable<T>, где универсальный параметр |
Aggregate<TSource>(IEnumerable<TSource>, Func<TSource,TSource,TSource>) |
Применяет к последовательности агрегатную функцию. |
Aggregate<TSource,TAccumulate>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>) |
Применяет к последовательности агрегатную функцию. Указанное начальное значение используется в качестве исходного значения агрегатной операции. |
Aggregate<TSource,TAccumulate,TResult>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>) |
Применяет к последовательности агрегатную функцию. Указанное начальное значение служит исходным значением для агрегатной операции, а указанная функция используется для выбора результирующего значения. |
AggregateBy<TSource,TKey,TAccumulate>(IEnumerable<TSource>, Func<TSource, TKey>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, IEqualityComparer<TKey>) |
Определяет границы фрагмента одномерного массива. |
AggregateBy<TSource,TKey,TAccumulate>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TKey,TAccumulate>, Func<TAccumulate,TSource,TAccumulate>, IEqualityComparer<TKey>) |
Определяет границы фрагмента одномерного массива. |
All<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Проверяет, все ли элементы последовательности удовлетворяют условию. |
Any<TSource>(IEnumerable<TSource>) |
Проверяет, содержит ли последовательность какие-либо элементы. |
Any<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Проверяет, удовлетворяет ли какой-либо элемент последовательности заданному условию. |
Append<TSource>(IEnumerable<TSource>, TSource) |
Добавляет значение в конец последовательности. |
AsEnumerable<TSource>(IEnumerable<TSource>) |
Возвращает входное значение, типизированное как IEnumerable<T>. |
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>>) |
Вычисляет среднее для последовательности значений Decimal обнуляемого типа, получаемой в результате применения функции преобразования к каждому элементу входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Вычисляет среднее для последовательности значений Double обнуляемого типа, получаемой в результате применения функции преобразования к каждому элементу входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Вычисляет среднее для последовательности значений Int32 обнуляемого типа, получаемой в результате применения функции преобразования к каждому элементу входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Вычисляет среднее для последовательности значений Int64 обнуляемого типа, получаемой в результате применения функции преобразования к каждому элементу входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Вычисляет среднее для последовательности значений Single обнуляемого типа, получаемой в результате применения функции преобразования к каждому элементу входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Вычисляет среднее для последовательности значений типа Single, получаемой в результате применения функции преобразования к каждому элементу входной последовательности. |
Cast<TResult>(IEnumerable) |
Приводит элементы объекта IEnumerable к заданному типу. |
Chunk<TSource>(IEnumerable<TSource>, Int32) |
Разбивает элементы последовательности на блоки размером не более |
Concat<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Объединяет две последовательности. |
Contains<TSource>(IEnumerable<TSource>, TSource) |
Определяет, содержится ли указанный элемент в последовательности, используя компаратор проверки на равенство по умолчанию. |
Contains<TSource>(IEnumerable<TSource>, TSource, IEqualityComparer<TSource>) |
Определяет, содержит ли последовательность заданный элемент, используя указанный компаратор IEqualityComparer<T>. |
Count<TSource>(IEnumerable<TSource>) |
Возвращает количество элементов в последовательности. |
Count<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает число, представляющее количество элементов последовательности, удовлетворяющих заданному условию. |
CountBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Определяет границы фрагмента одномерного массива. |
DefaultIfEmpty<TSource>(IEnumerable<TSource>) |
Возвращает элементы указанной последовательности или одноэлементную коллекцию, содержащую значение параметра типа по умолчанию, если последовательность пуста. |
DefaultIfEmpty<TSource>(IEnumerable<TSource>, TSource) |
Возвращает элементы указанной последовательности или одноэлементную коллекцию, содержащую указанное значение, если последовательность пуста. |
Distinct<TSource>(IEnumerable<TSource>) |
Возвращает различающиеся элементы последовательности, используя для сравнения значений компаратор проверки на равенство по умолчанию. |
Distinct<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Возвращает различающиеся элементы последовательности, используя для сравнения значений указанный компаратор IEqualityComparer<T>. |
DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Возвращает отдельные элементы последовательности в соответствии с указанной функцией селектора ключей. |
DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Возвращает отдельные элементы последовательности в соответствии с указанной функцией селектора ключей и использует указанный компаратор для сравнения ключей. |
ElementAt<TSource>(IEnumerable<TSource>, Index) |
Возвращает элемент по указанному индексу в последовательности. |
ElementAt<TSource>(IEnumerable<TSource>, Int32) |
Возвращает элемент по указанному индексу в последовательности. |
ElementAtOrDefault<TSource>(IEnumerable<TSource>, Index) |
Возвращает элемент последовательности по указанному индексу или значение по умолчанию, если индекс вне допустимого диапазона. |
ElementAtOrDefault<TSource>(IEnumerable<TSource>, Int32) |
Возвращает элемент последовательности по указанному индексу или значение по умолчанию, если индекс вне допустимого диапазона. |
Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Находит разность множеств, представленных двумя последовательностями, используя для сравнения значений компаратор проверки на равенство по умолчанию. |
Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Находит разность множеств, представленных двумя последовательностями, используя для сравнения значений указанный компаратор IEqualityComparer<T>. |
ExceptBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>) |
Создает разность наборов двух последовательностей в соответствии с указанной функцией селектора ключа. |
ExceptBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Создает разность наборов двух последовательностей в соответствии с указанной функцией селектора ключа. |
First<TSource>(IEnumerable<TSource>) |
Возвращает первый элемент последовательности. |
First<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает первый элемент последовательности, удовлетворяющий указанному условию. |
FirstOrDefault<TSource>(IEnumerable<TSource>) |
Возвращает первый элемент последовательности или значение по умолчанию, если последовательность не содержит элементов. |
FirstOrDefault<TSource>(IEnumerable<TSource>, TSource) |
Возвращает первый элемент последовательности или указанное значение по умолчанию, если последовательность не содержит элементов. |
FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает первый элемент последовательности, удовлетворяющий указанному условию, или значение по умолчанию, если ни одного такого элемента не найдено. |
FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource) |
Возвращает первый элемент последовательности, удовлетворяющий условию, или указанное значение по умолчанию, если такой элемент не найден. |
GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Группирует элементы последовательности в соответствии с заданной функцией селектора ключа. |
GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Группирует элементы последовательности в соответствии с заданной функцией селектора ключа и сравнивает ключи с помощью указанного компаратора. |
GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Группирует элементы последовательности в соответствии с заданной функцией селектора ключа и проецирует элементы каждой группы с помощью указанной функции. |
GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Группирует элементы последовательности в соответствии с функцией селектора ключа. Ключи сравниваются с помощью компаратора, элементы каждой группы проецируются с помощью указанной функции. |
GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>) |
Группирует элементы последовательности в соответствии с заданной функцией селектора ключа и создает результирующее значение для каждой группы и ее ключа. |
GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,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,TResult>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>, TResult>, IEqualityComparer<TKey>) |
Группирует элементы последовательности в соответствии с заданной функцией селектора ключа и создает результирующее значение для каждой группы и ее ключа. Значения ключей сравниваются с помощью указанного компаратора, элементы каждой группы проецируются с помощью указанной функции. |
GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>) |
Устанавливает корреляцию между элементами двух последовательностей на основе равенства ключей и группирует результаты. Для сравнения ключей используется компаратор проверки на равенство по умолчанию. |
GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>) |
Устанавливает корреляцию между элементами двух последовательностей на основе равенства ключей и группирует результаты. Для сравнения ключей используется указанный компаратор IEqualityComparer<T>. |
Index<TSource>(IEnumerable<TSource>) |
Определяет границы фрагмента одномерного массива. |
Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Находит пересечение множеств, представленных двумя последовательностями, используя для сравнения значений компаратор проверки на равенство по умолчанию. |
Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Находит пересечение множеств, представленных двумя последовательностями, используя для сравнения значений указанный компаратор IEqualityComparer<T>. |
IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>) |
Создает набор пересечения двух последовательностей в соответствии с указанной функцией селектора ключей. |
IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Создает набор пересечения двух последовательностей в соответствии с указанной функцией селектора ключей. |
Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>) |
Устанавливает корреляцию между элементами двух последовательностей на основе сопоставления ключей. Для сравнения ключей используется компаратор проверки на равенство по умолчанию. |
Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>, IEqualityComparer<TKey>) |
Устанавливает корреляцию между элементами двух последовательностей на основе сопоставления ключей. Для сравнения ключей используется указанный компаратор IEqualityComparer<T>. |
Last<TSource>(IEnumerable<TSource>) |
Возвращает последний элемент последовательности. |
Last<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает последний элемент последовательности, удовлетворяющий указанному условию. |
LastOrDefault<TSource>(IEnumerable<TSource>) |
Возвращает последний элемент последовательности или значение по умолчанию, если последовательность не содержит элементов. |
LastOrDefault<TSource>(IEnumerable<TSource>, TSource) |
Возвращает последний элемент последовательности или указанное значение по умолчанию, если последовательность не содержит элементов. |
LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает последний элемент последовательности, удовлетворяющий указанному условию, или значение по умолчанию, если ни одного такого элемента не найдено. |
LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource) |
Возвращает последний элемент последовательности, удовлетворяющий условию, или указанное значение по умолчанию, если такой элемент не найден. |
LongCount<TSource>(IEnumerable<TSource>) |
Возвращает значение типа Int64, представляющее общее число элементов в последовательности. |
LongCount<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает значение типа Int64, представляющее число элементов последовательности, удовлетворяющих заданному условию. |
Max<TSource>(IEnumerable<TSource>) |
Возвращает максимальное значение, содержащееся в универсальной последовательности. |
Max<TSource>(IEnumerable<TSource>, IComparer<TSource>) |
Возвращает максимальное значение, содержащееся в универсальной последовательности. |
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>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Decimal обнуляемого типа. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Double обнуляемого типа. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Int32 обнуляемого типа. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Int64 обнуляемого типа. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Single обнуляемого типа. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение типа Single. |
Max<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Вызывает функцию преобразования для каждого элемента универсальной последовательности и возвращает максимальное результирующее значение. |
MaxBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Возвращает максимальное значение в универсальной последовательности в соответствии с указанной функцией селектора ключа. |
MaxBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Возвращает максимальное значение в универсальной последовательности в соответствии с указанной функцией селектора ключей и компаратором ключей. |
Min<TSource>(IEnumerable<TSource>) |
Возвращает минимальное значение, содержащееся в универсальной последовательности. |
Min<TSource>(IEnumerable<TSource>, IComparer<TSource>) |
Возвращает минимальное значение, содержащееся в универсальной последовательности. |
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>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Decimal обнуляемого типа. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Double обнуляемого типа. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Int32 обнуляемого типа. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Int64 обнуляемого типа. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Single обнуляемого типа. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение типа Single. |
Min<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Вызывает функцию преобразования для каждого элемента универсальной последовательности и возвращает минимальное результирующее значение. |
MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Возвращает минимальное значение в универсальной последовательности в соответствии с указанной функцией селектора ключа. |
MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Возвращает минимальное значение в универсальной последовательности в соответствии с указанной функцией селектора ключей и компаратором ключей. |
OfType<TResult>(IEnumerable) |
Выполняет фильтрацию элементов объекта IEnumerable по заданному типу. |
Order<T>(IEnumerable<T>) |
Сортирует элементы последовательности в порядке возрастания. |
Order<T>(IEnumerable<T>, IComparer<T>) |
Сортирует элементы последовательности в порядке возрастания. |
OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Сортирует элементы последовательности в порядке возрастания ключа. |
OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Сортирует элементы последовательности в порядке возрастания с использованием указанного компаратора. |
OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Сортирует элементы последовательности в порядке убывания ключа. |
OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Сортирует элементы последовательности в порядке убывания с использованием указанного компаратора. |
OrderDescending<T>(IEnumerable<T>) |
Сортирует элементы последовательности в порядке убывания. |
OrderDescending<T>(IEnumerable<T>, IComparer<T>) |
Сортирует элементы последовательности в порядке убывания. |
Prepend<TSource>(IEnumerable<TSource>, TSource) |
Добавляет значение в начало последовательности. |
Reverse<TSource>(IEnumerable<TSource>) |
Изменяет порядок элементов последовательности на противоположный. |
Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Проецирует каждый элемент последовательности в новую форму. |
Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,TResult>) |
Проецирует каждый элемент последовательности в новую форму, добавляя индекс элемента. |
SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TResult>>) |
Проецирует каждый элемент последовательности в объект IEnumerable<T> и объединяет результирующие последовательности в одну последовательность. |
SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TResult>>) |
Проецирует каждый элемент последовательности в объект IEnumerable<T> и объединяет результирующие последовательности в одну последовательность. Индекс каждого элемента исходной последовательности используется в проецированной форме этого элемента. |
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>, объединяет результирующие последовательности в одну и вызывает функцию селектора результата для каждого элемента этой последовательности. Индекс каждого элемента исходной последовательности используется в промежуточной проецированной форме этого элемента. |
SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Определяет, совпадают ли две последовательности, используя для сравнения элементов компаратор проверки на равенство по умолчанию, предназначенный для их типа. |
SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Определяет, совпадают ли две последовательности, используя для сравнения элементов указанный компаратор IEqualityComparer<T>. |
Single<TSource>(IEnumerable<TSource>) |
Возвращает единственный элемент последовательности и генерирует исключение, если число элементов последовательности отлично от 1. |
Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает единственный элемент последовательности, удовлетворяющий указанному условию, и вызывает исключение, если таких элементов больше одного. |
SingleOrDefault<TSource>(IEnumerable<TSource>) |
Возвращает единственный элемент последовательности или значение по умолчанию, если последовательность пуста; если в последовательности более одного элемента, генерируется исключение. |
SingleOrDefault<TSource>(IEnumerable<TSource>, TSource) |
Возвращает единственный элемент последовательности или указанное значение по умолчанию, если последовательность пуста; Этот метод создает исключение, если в последовательности имеется несколько элементов. |
SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает единственный элемент последовательности, удовлетворяющий указанному условию, или значение по умолчанию, если такого элемента не существует; если условию удовлетворяет более одного элемента, вызывается исключение. |
SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource) |
Возвращает единственный элемент последовательности, удовлетворяющий указанному условию, или указанное значение по умолчанию, если такого элемента не существует; Этот метод создает исключение, если условию удовлетворяет несколько элементов. |
Skip<TSource>(IEnumerable<TSource>, Int32) |
Пропускает заданное число элементов в последовательности и возвращает остальные элементы. |
SkipLast<TSource>(IEnumerable<TSource>, Int32) |
Возвращает новую перечислимую коллекцию, содержащую элементы из |
SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Пропускает элементы в последовательности, пока они удовлетворяют заданному условию, и затем возвращает оставшиеся элементы. |
SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Пропускает элементы в последовательности, пока они удовлетворяют заданному условию, и затем возвращает оставшиеся элементы. Индекс элемента используется в логике функции предиката. |
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>>) |
Вычисляет сумму последовательности значений Decimal обнуляемого типа, получаемой в результате применения функции преобразования к каждому элементу входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Вычисляет сумму последовательности значений Double обнуляемого типа, получаемой в результате применения функции преобразования к каждому элементу входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Вычисляет сумму последовательности значений Int32 обнуляемого типа, получаемой в результате применения функции преобразования к каждому элементу входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Вычисляет сумму последовательности значений Int64 обнуляемого типа, получаемой в результате применения функции преобразования к каждому элементу входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Вычисляет сумму последовательности значений Single обнуляемого типа, получаемой в результате применения функции преобразования к каждому элементу входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Вычисляет сумму последовательности значений типа Single, получаемой в результате применения функции преобразования к каждому элементу входной последовательности. |
Take<TSource>(IEnumerable<TSource>, Int32) |
Возвращает указанное число подряд идущих элементов с начала последовательности. |
Take<TSource>(IEnumerable<TSource>, Range) |
Возвращает указанный диапазон смежных элементов из последовательности. |
TakeLast<TSource>(IEnumerable<TSource>, Int32) |
Возвращает новую перечислимую коллекцию, содержащую последние |
TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает цепочку элементов последовательности, удовлетворяющих указанному условию. |
TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Возвращает цепочку элементов последовательности, удовлетворяющих указанному условию. Индекс элемента используется в логике функции предиката. |
ToArray<TSource>(IEnumerable<TSource>) |
Создает массив из объекта IEnumerable<T>. |
ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Создает словарь Dictionary<TKey,TValue> из объекта IEnumerable<T> в соответствии с заданной функцией селектора ключа. |
ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, 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,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Создает словарь Dictionary<TKey,TValue> из объекта IEnumerable<T> в соответствии с заданным компаратором и функциями селектора ключа и селектора элемента. |
ToHashSet<TSource>(IEnumerable<TSource>) |
Создает HashSet<T> из IEnumerable<T>. |
ToHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Создает HashSet<T> из IEnumerable<T> с использованием |
ToList<TSource>(IEnumerable<TSource>) |
Создает List<T> из IEnumerable<T>. |
ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Создает словарь Lookup<TKey,TElement> из объекта IEnumerable<T> в соответствии с заданной функцией селектора ключа. |
ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, 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,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Создает объект Lookup<TKey,TElement> из объекта IEnumerable<T> в соответствии с заданным компаратором и функциями селектора ключа и селектора элемента. |
TryGetNonEnumeratedCount<TSource>(IEnumerable<TSource>, Int32) |
Пытается определить количество элементов в последовательности без принудительного перечисления. |
Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Находит объединение множеств, представленных двумя последовательностями, используя для сравнения значений компаратор проверки на равенство по умолчанию. |
Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Находит объединение множеств, представленных двумя последовательностями, используя указанный компаратор IEqualityComparer<T>. |
UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>) |
Создает объединение наборов двух последовательностей в соответствии с указанной функцией селектора ключа. |
UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Создает объединение наборов двух последовательностей в соответствии с указанной функцией селектора ключа. |
Where<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Выполняет фильтрацию последовательности значений на основе заданного предиката. |
Where<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Выполняет фильтрацию последовательности значений на основе заданного предиката. Индекс каждого элемента используется в логике функции предиката. |
Zip<TFirst,TSecond>(IEnumerable<TFirst>, IEnumerable<TSecond>) |
Создает последовательность кортежей с элементами из двух указанных последовательностей. |
Zip<TFirst,TSecond,TThird>(IEnumerable<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>) |
Создает последовательность кортежей с элементами из трех указанных последовательностей. |
Zip<TFirst,TSecond,TResult>(IEnumerable<TFirst>, IEnumerable<TSecond>, Func<TFirst,TSecond,TResult>) |
Применяет указанную функцию к соответствующим элементам двух последовательностей, что дает последовательность результатов. |
AsParallel(IEnumerable) |
Позволяет осуществлять параллельный запрос. |
AsParallel<TSource>(IEnumerable<TSource>) |
Позволяет осуществлять параллельный запрос. |
AsQueryable(IEnumerable) |
Преобразовывает коллекцию IEnumerable в объект IQueryable. |
AsQueryable<TElement>(IEnumerable<TElement>) |
Преобразовывает универсальный объект IEnumerable<T> в универсальный объект IQueryable<T>. |
AsMemory<T>(ArraySegment<T>) |
Создает новую область памяти для части целевого сегмента массива. |
AsMemory<T>(ArraySegment<T>, Int32) |
Создает новую область памяти для части сегмента целевого массива, начиная с указанной позиции и заканчивая концом сегмента. |
AsMemory<T>(ArraySegment<T>, Int32, Int32) |
Создает новую область памяти для части сегмента целевого массива, начиная с указанной позиции с учетом заданной длины. |
AsSpan<T>(ArraySegment<T>) |
Создает новый диапазон для сегмента целевого массива. |
AsSpan<T>(ArraySegment<T>, Index) |
Создает новый диапазон для части сегмента целевого массива, начиная с указанного индекса и заканчивая концом сегмента. |
AsSpan<T>(ArraySegment<T>, Int32) |
Создает новый диапазон для части сегмента целевого массива, начиная с указанной позиции и заканчивая концом сегмента. |
AsSpan<T>(ArraySegment<T>, Int32, Int32) |
Создает новый диапазон для части сегмента целевого массива, начиная с указанной позиции с учетом заданной длины. |
AsSpan<T>(ArraySegment<T>, Range) |
Создает диапазон для части сегмента целевого массива с использованием начального и конечного индексов диапазона. |
Ancestors<T>(IEnumerable<T>) |
Возвращает коллекцию элементов, содержащую предков каждого узла в исходной коллекции. |
Ancestors<T>(IEnumerable<T>, XName) |
Возвращает отфильтрованную коллекцию элементов, содержащую предков каждого узла в исходной коллекции. В коллекцию включаются только элементы, соответствующие XName. |
DescendantNodes<T>(IEnumerable<T>) |
Возвращает коллекцию подчиненных узлов каждого документа и элемента в исходной коллекции. |
Descendants<T>(IEnumerable<T>) |
Возвращает коллекцию элементов, содержащую подчиненные элементы каждого элемента и документа в исходной коллекции. |
Descendants<T>(IEnumerable<T>, XName) |
Возвращает отфильтрованную коллекцию элементов, содержащую подчиненные элементы каждого элемента и документа в исходной коллекции. В коллекцию включаются только элементы, соответствующие XName. |
Elements<T>(IEnumerable<T>) |
Возвращает коллекцию дочерних элементов каждого элемента и документа в исходной коллекции. |
Elements<T>(IEnumerable<T>, XName) |
Возвращает отфильтрованную коллекцию дочерних элементов каждого элемента и документа в исходной коллекции. В коллекцию включаются только элементы, соответствующие XName. |
InDocumentOrder<T>(IEnumerable<T>) |
Возвращает коллекцию узлов, содержащую все узлы в исходной коллекции, отсортированные в порядке следования документов. |
Nodes<T>(IEnumerable<T>) |
Возвращает коллекцию дочерних узлов каждого документа и элемента в исходной коллекции. |
Remove<T>(IEnumerable<T>) |
Удаление каждого узла в исходной коллекции из родительского узла. |
Применяется к
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по