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
相关推荐
冬奇Lab8 小时前
MediaPlayer 播放器架构:NuPlayer 的 Source/Decoder/Renderer 三驾马车
android·音视频开发·源码阅读
炸炸鱼.10 小时前
Python 操作 MySQL 数据库
android·数据库·python·adb
用户416596736935511 小时前
nextlib 项目架构与深度技术指南 (Architecture & Technical Master Guide)
android
aq553560012 小时前
Laravel10.x重磅升级,新特性一览
android·java·开发语言
Trouvaille ~12 小时前
【MySQL篇】数据类型:存储数据的基础
android·数据库·mysql·adb·字符集·数据类型·基础入门
2401_8858850413 小时前
开发视频短信接口好开发吗?图文视频短信接口对接教程
android·音视频
千码君201615 小时前
kotlin:Jetpack Compose 给APP添加声音(点击音效/背景音乐)
android·开发语言·kotlin·音效·jetpack compose
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.15 小时前
MySQL半同步复制与GTID实战详解
android·mysql·adb
用户416596736935516 小时前
深度解码:记一次视频时间戳(PTS)异常导致的播放故障排查
android
大白菜和MySQL18 小时前
linux系统环境常用命令
android·linux·adb