none所在位置是kotlin.sequences.none,其相关用法介绍如下。

用法一

fun <T> Sequence<T>.none(): Boolean

如果序列没有元素,则返回 true

操作是 terminal

例子:

import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
val emptyList = emptyList<Int>()
println("emptyList.none() is ${emptyList.none()}") // true

val nonEmptyList = listOf("one", "two", "three")
println("nonEmptyList.none() is ${nonEmptyList.none()}") // false
//sampleEnd
}

输出:

emptyList.none() is true
nonEmptyList.none() is false

用法二

inline fun <T> Sequence<T>.none(
    predicate: (T) -> Boolean
): Boolean

如果没有元素与给定的 predicate 匹配,则返回 true

操作是 terminal

例子:

import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
val isEven: (Int) -> Boolean = { it % 2 == 0 }
val zeroToTen = 0..10
println("zeroToTen.none { isEven(it) } is ${zeroToTen.none { isEven(it) }}") // false
println("zeroToTen.none(isEven) is ${zeroToTen.none(isEven)}") // false

val odds = zeroToTen.map { it * 2 + 1 }
println("odds.none { isEven(it) } is ${odds.none { isEven(it) }}") // true

val emptyList = emptyList<Int>()
println("emptyList.none { true } is ${emptyList.none { true }}") // true
//sampleEnd
}

输出:

zeroToTen.none { isEven(it) } is false
zeroToTen.none(isEven) is false
odds.none { isEven(it) } is true
emptyList.none { true } is true