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
相关推荐
奥尔特星云大使5 小时前
MySQL 慢查询日志slow query log
android·数据库·mysql·adb·慢日志·slow query log
2501_915918419 小时前
iOS 框架全解析,原生框架与跨平台框架对比、开发应用打包与 App Store 上架实战经验
android·ios·小程序·https·uni-app·iphone·webview
K24B;9 小时前
多模态大语言模型LISA++
android·人工智能·语言模型·分割·多模态大语言模型
molihuan15 小时前
开源 全平台 哔哩哔哩缓存视频合并 Github地址:https://github.com/molihuan/hlbmerge_flutter
android·flutter·缓存·ffmpeg·开源·github·音视频
奶糖 肥晨15 小时前
批量重命名技巧:使用PowerShell一键整理图片文件命名规范
android·服务器·数据库
Momentary_SixthSense16 小时前
如何对较长的Stream链进行Debug
android·java·开发语言
little_fat_sheep16 小时前
【Rive】rive-android源码分析
android
教程分享大师18 小时前
新魔百和m401h全部版本当贝桌面固件卡刷包和线刷包带adb权限
android
rufeii18 小时前
网鼎杯 2020 青龙组
android
我要升天!19 小时前
MySQL表的内连和外连
android·mysql·adb