Kotlin all用法及代码示例

本文方法及代码示例筛选整理自kotlinlang.org------Kotlin 2.1.20 Released

all 所在包 kotlin.collections.all,其相关用法介绍如下:

用法一

kotlin 复制代码
inline fun <T> Array<out T>.all(
    predicate: (T) -> Boolean
): Boolean

inline fun ByteArray.all(
    predicate: (Byte) -> Boolean
): Boolean

inline fun ShortArray.all(
    predicate: (Short) -> Boolean
): Boolean

inline fun IntArray.all(predicate: (Int) -> Boolean): Boolean

inline fun LongArray.all(
    predicate: (Long) -> Boolean
): Boolean

inline fun FloatArray.all(
    predicate: (Float) -> Boolean
): Boolean

inline fun DoubleArray.all(
    predicate: (Double) -> Boolean
): Boolean

inline fun BooleanArray.all(
    predicate: (Boolean) -> Boolean
): Boolean

inline fun CharArray.all(
    predicate: (Char) -> Boolean
): Boolean

inline fun <T> Iterable<T>.all(
    predicate: (T) -> Boolean
): Boolean

@ExperimentalUnsignedTypes inline fun UIntArray.all(
    predicate: (UInt) -> Boolean
): Boolean

@ExperimentalUnsignedTypes inline fun ULongArray.all(
    predicate: (ULong) -> Boolean
): Boolean

@ExperimentalUnsignedTypes inline fun UByteArray.all(
    predicate: (UByte) -> Boolean
): Boolean

@ExperimentalUnsignedTypes inline fun UShortArray.all(
    predicate: (UShort) -> Boolean
): Boolean
  • 如果所有元素都与给定的 predicate 匹配,则返回 true 。

用法二

kotlin 复制代码
inline fun <K, V> Map<out K, V>.all(
    predicate: (Entry<K, V>) -> Boolean
): Boolean
  • 如果所有条目都与给定的 predicate 匹配,则返回 true 。

代码示例:

kotlin 复制代码
import kotlin.test.*

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

    val evens = zeroToTen.map { it * 2 }
    println("evens.all { isEven(it) } is ${evens.all { isEven(it) }}") // true

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

// 输出
zeroToTen.all { isEven(it) } is false
zeroToTen.all(isEven) is false
evens.all { isEven(it) } is true
emptyList.all { false } is true
相关推荐
hunterandroid1 小时前
[Android 从零到一] Glide 图片加载原理:三级缓存、生命周期绑定与内存优化
android
法的空间1 小时前
AI 编程时代,为什么 Dart 分析会拖慢大型项目的开发
android·flutter·ios
鱼儿也有烦恼1 小时前
客户端应用架构模式
android·架构
独隅2 小时前
Claude 高效应用实战指南
android·java·开发语言·claude·claude code
硅基手札2 小时前
Android 系统全景专栏 00 · 总目录
android·操作系统·嵌入式开发
YB13753 小时前
Jetpack Compose 动画Crossfade
android
2401_833269303 小时前
Android歌词功能实现
android
恋猫de小郭3 小时前
Flutter 紧急发布 3.47.8 安全升级版本,建议都升级
android·前端·flutter
YB13753 小时前
Jetpack Compose 动画AnimatedContent
android
美狐美颜SDK开放平台14 小时前
准备开发直播APP?视频美颜SDK接入前的十项检查清单
android·ios·音视频·直播美颜sdk·视频美颜sdk