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


Enumerable.LongCount Метод

Определение

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

Перегрузки

LongCount<TSource>(IEnumerable<TSource>)

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

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

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

LongCount<TSource>(IEnumerable<TSource>)

Исходный код:
Count.cs
Исходный код:
Count.cs
Исходный код:
Count.cs

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

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static long LongCount(System::Collections::Generic::IEnumerable<TSource> ^ source);
public static long LongCount<TSource> (this System.Collections.Generic.IEnumerable<TSource> source);
static member LongCount : seq<'Source> -> int64
<Extension()>
Public Function LongCount(Of TSource) (source As IEnumerable(Of TSource)) As Long

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

TSource

Тип элементов source.

Параметры

source
IEnumerable<TSource>

Объект IEnumerable<T>, содержащий элементы, которые требуется подсчитать.

Возвращаемое значение

Число элементов в исходной последовательности.

Исключения

source имеет значение null.

Количество элементов превышает Значение Int64.MaxValue.

Примеры

В следующем примере кода показано, как использовать для LongCount<TSource>(IEnumerable<TSource>) подсчета элементов в массиве.

string[] fruits = { "apple", "banana", "mango",
                      "orange", "passionfruit", "grape" };

long count = fruits.LongCount();

Console.WriteLine("There are {0} fruits in the collection.", count);

/*
 This code produces the following output:

 There are 6 fruits in the collection.
*/
' Create an array of strings.
Dim fruits() As String =
{"apple", "banana", "mango", "orange", "passionfruit", "grape"}

' Get the number of items in the array.
Dim count As Long = fruits.LongCount()

' Display the result.
Console.WriteLine($"There are {count} fruits in the collection.")

' This code produces the following output:
'
' There are 6 fruits in the collection.

Комментарии

Используйте этот метод, а не Count тогда, когда ожидается, что результат будет больше MaxValue.

В синтаксисе Aggregate Into LongCount() выражения запроса Visual Basic предложение преобразуется в вызов LongCount.

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

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

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

Исходный код:
Count.cs
Исходный код:
Count.cs
Исходный код:
Count.cs

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

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static long LongCount(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, bool> ^ predicate);
public static long LongCount<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,bool> predicate);
static member LongCount : seq<'Source> * Func<'Source, bool> -> int64
<Extension()>
Public Function LongCount(Of TSource) (source As IEnumerable(Of TSource), predicate As Func(Of TSource, Boolean)) As Long

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

TSource

Тип элементов source.

Параметры

source
IEnumerable<TSource>

Объект IEnumerable<T>, содержащий элементы, которые требуется подсчитать.

predicate
Func<TSource,Boolean>

Функция для проверки каждого элемента на соответствие условию.

Возвращаемое значение

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

Исключения

Параметр source или predicate имеет значение null.

Количество соответствующих элементов превышает Значение Int64.MaxValue.

Примеры

В следующем примере кода показано, как использовать для LongCount<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) подсчета элементов в массиве, удовлетворяющих условию.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void LongCountEx2()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    const int Age = 3;

    long count = pets.LongCount(pet => pet.Age > Age);

    Console.WriteLine("There are {0} animals over age {1}.", count, Age);
}

/*
 This code produces the following output:

 There are 2 animals over age 3.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub LongCountEx2()
    ' Create a list of Pet objects.
    Dim pets As New List(Of Pet)(New Pet() _
                 {New Pet With {.Name = "Barley", .Age = 8},
                  New Pet With {.Name = "Boots", .Age = 4},
                  New Pet With {.Name = "Whiskers", .Age = 1}})

    ' Determine the number of elements in the list
    ' where the pet's age is greater than a constant value (3).
    Const Age As Integer = 3
    Dim count As Long =
pets.LongCount(Function(pet) pet.Age > Age)

    ' Display the result.
    Console.WriteLine($"There are {count} animals over age {Age}")
End Sub

' This code produces the following output:
'
' There are 2 animals over age 3

Комментарии

Используйте этот метод, а не Count тогда, когда ожидается, что результат будет больше MaxValue.

В синтаксисе Aggregate Into LongCount() выражения запроса Visual Basic предложение преобразуется в вызов LongCount.

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

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