Kotlin 数组 - filter() 函数



Kotlin 数组的 filter() 函数用于在现有集合被过滤后创建一个新的列表。它接受一个谓词作为参数,并仅返回满足指定条件的项目。

如果元素满足此条件,它将被添加到新创建的列表中。否则,它将从最终列表中丢弃。

语法

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

fun <T> Array<out T>.filter(predicate: (T) -> Boolean): List<T>

参数

此函数接受一个谓词作为参数。谓词表示一个给出布尔值的条件。

返回值

此函数返回一个包含所有过滤元素的列表。

示例 1

以下是一个演示 filter() 函数用法的基本示例:

fun main(args: Array<String>) {
   val number: Array<Int> = arrayOf(1, 2, 3, 4, 5, 6, 7, 8)
   val list = number.filter{it>3}
   println("Filtered list: $list")
}

输出

执行上述代码后,我们将得到以下结果:

Filtered list: [4, 5, 6, 7, 8]

示例 2

现在,让我们看另一个示例。在这里,我们使用 filter() 函数从数组中过滤出所有偶数:

fun main(args: Array<String>) {
   val number: Array<Int> = arrayOf(1, 2, 3, 4, 5, 6, 7, 8)
   val list = number.filter{it%2==0}
   println("Even number: $list")
}

输出

执行上述代码后,我们将得到以下输出:

Filtered list: [2, 4, 6, 8]

示例 3

下面的示例创建一个存储字符串的数组。然后,我们使用 filter() 函数显示长度大于 3 的元素:

fun main(args: Array<String>) {
   val strings: Array<String> = arrayOf("hii", "Hello", "tutorix", "tutorialspoint")
   val filter = strings.filter{it.length>3}
   println("list: $filter")
}

输出

上述代码产生以下输出:

list : [Hello, tutorix, tutorialspoint]
kotlin_arrays.htm
广告