Enumerable.Count Metode

Definisi

Mengembalikan jumlah elemen secara berurutan.

Overload

Nama Deskripsi
Count<TSource>(IEnumerable<TSource>)

Mengembalikan jumlah elemen secara berurutan.

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

Mengembalikan angka yang menunjukkan berapa banyak elemen dalam urutan yang ditentukan memenuhi kondisi.

Count<TSource>(IEnumerable<TSource>)

Sumber:
Count.cs
Sumber:
Count.cs
Sumber:
Count.cs
Sumber:
Count.cs
Sumber:
Count.cs

Mengembalikan jumlah elemen secara berurutan.

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

Jenis parameter

TSource

Jenis elemen source.

Parameter

source
IEnumerable<TSource>

Urutan yang berisi elemen yang akan dihitung.

Mengembalikan

Jumlah elemen dalam urutan input.

Pengecualian

source adalah null.

Jumlah elemen di source lebih besar dari Int32.MaxValue.

Contoh

Contoh kode berikut menunjukkan cara menggunakan Count<TSource>(IEnumerable<TSource>) untuk menghitung elemen dalam array.

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

try
{
    int numberOfFruits = fruits.Count();
    Console.WriteLine(
        "There are {0} fruits in the collection.",
        numberOfFruits);
}
catch (OverflowException)
{
    Console.WriteLine("The count is too large to store as an Int32.");
    Console.WriteLine("Try using the LongCount() method instead.");
}

// 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"}

Try
    ' Count the number of items in the array.
    Dim numberOfFruits As Integer = fruits.Count()
    ' Display the output.
    Console.WriteLine($"There are {numberOfFruits} fruits in the collection.")
Catch e As OverflowException
    Console.WriteLine("The count is too large to store as an Int32. Try using LongCount() instead.")
End Try

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

Keterangan

Jika jenis source mengimplementasikan ICollection<T>, implementasi tersebut digunakan untuk mendapatkan jumlah elemen. Jika tidak, metode ini menentukan jumlahnya.

LongCount Gunakan metode ketika Anda mengharapkan dan ingin mengizinkan hasilnya lebih besar dari MaxValue.

Dalam sintaks ekspresi kueri Visual Basic, klausa Aggregate Into Count() diterjemahkan ke pemanggilan Count.

Lihat juga

Berlaku untuk

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

Sumber:
Count.cs
Sumber:
Count.cs
Sumber:
Count.cs
Sumber:
Count.cs
Sumber:
Count.cs

Mengembalikan angka yang menunjukkan berapa banyak elemen dalam urutan yang ditentukan memenuhi kondisi.

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

Jenis parameter

TSource

Jenis elemen source.

Parameter

source
IEnumerable<TSource>

Urutan yang berisi elemen yang akan diuji dan dihitung.

predicate
Func<TSource,Boolean>

Fungsi untuk menguji setiap elemen untuk kondisi.

Mengembalikan

Angka yang menunjukkan berapa banyak elemen dalam urutan memenuhi kondisi dalam fungsi predikat.

Pengecualian

source atau predicate adalah null.

Jumlah elemen di source lebih besar dari Int32.MaxValue.

Contoh

Contoh kode berikut menunjukkan cara menggunakan Count<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) untuk menghitung elemen dalam array yang memenuhi kondisi.

class Pet
{
    public string Name { get; set; }
    public bool Vaccinated { get; set; }
}

public static void CountEx2()
{
    Pet[] pets = { new Pet { Name="Barley", Vaccinated=true },
                   new Pet { Name="Boots", Vaccinated=false },
                   new Pet { Name="Whiskers", Vaccinated=false } };

    try
    {
        int numberUnvaccinated = pets.Count(p => !p.Vaccinated);
        Console.WriteLine("There are {0} unvaccinated animals.", numberUnvaccinated);
    }
    catch (OverflowException)
    {
        Console.WriteLine("The count is too large to store as an Int32.");
        Console.WriteLine("Try using the LongCount() method instead.");
    }
}

// This code produces the following output:
//
// There are 2 unvaccinated animals.
Structure Pet
    Public Name As String
    Public Vaccinated As Boolean
End Structure

Public Shared Sub CountEx2()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Vaccinated = True},
                 New Pet With {.Name = "Boots", .Vaccinated = False},
                 New Pet With {.Name = "Whiskers", .Vaccinated = False}}

    Try
        ' Count the number of Pets in the array where the Vaccinated property is False.
        Dim numberUnvaccinated As Integer =
    pets.Count(Function(p) p.Vaccinated = False)
        ' Display the output.
        Console.WriteLine($"There are {numberUnvaccinated} unvaccinated animals.")
    Catch e As OverflowException
        Console.WriteLine("The count is too large to store as an Int32. Try using LongCount() instead.")
    End Try

End Sub

' This code produces the following output:
'
' There are 2 unvaccinated animals.

Keterangan

Jika jenis source mengimplementasikan ICollection<T>, implementasi tersebut digunakan untuk mendapatkan jumlah elemen. Jika tidak, metode ini menentukan jumlahnya.

Anda harus menggunakan LongCount metode ketika Anda mengharapkan dan ingin mengizinkan hasilnya lebih besar dari MaxValue.

Dalam sintaks ekspresi kueri Visual Basic, klausa Aggregate Into Count() diterjemahkan ke pemanggilan Count.

Lihat juga

Berlaku untuk