Kotlin 数组 - count() 函数



Kotlin 数组的 count() 函数检索与给定谓词匹配的元素数量。

此函数有 2 个实现,它们是函数的重载版本。其中一个函数不接受任何输入参数,直接返回数组中的元素数量。另一个重载的 count() 函数接受一个布尔谓词函数,并且只返回与给定谓词匹配的数组中元素的数量。

语法

以下是 Kotlin 数组 count() 函数的语法:

fun <T> Array<out T>.count(): Int
or,
inline fun <T> Array<out T>.count(
    predicate: (T) -> Boolean
): Int

参数

第一个重载函数不接受参数,另一个接受一个参数。即谓词,表示条件。

返回值

此函数返回一个整数值,表示元素的数量。

示例 1

以下基本示例在没有任何谓词的情况下返回元素的数量:

fun main(args: Array<String>) {
   var array = Array(10) { i -> i}
   var result = array.count()
   println("The number of elements in the array is $result")
}

输出

以下是输出:

The number of elements in the array is 10

示例 2

现在,让我们考虑另一个示例。在这里,我们创建一个数组来存储元素并根据谓词计算元素的数量:

fun main(args: Array<String>) {
   var array = Array(10) { i ->
      if(i<3) {'c'}
      else if(i<5) {"Hi"}
      else {5}
   }
   var result = array.count { i -> i is Int }
   println("The number of elements in the array which are of type integer is $result")
}

输出

以下是输出:

The number of elements in the array which are of type integer is 5

示例 3

下面的示例创建一个包含随机值的数组。然后,我们使用 count() 函数显示数组中等于 10 的元素的数量:

fun main(args: Array<String>) {
   var array = arrayOf(10, 23.4, 'c', "Hi", 10)
   var result = array.count { i -> i==10 }
   println("The number of elements in the array which are equal to 10 is $result")
}

输出

以下是输出:

The number of elements in the array which are equal to 10 is 2
kotlin_arrays.htm
广告