- Kotlin 教程
- Kotlin - 首页
- Kotlin - 概述
- Kotlin - 环境设置
- Kotlin - 架构
- Kotlin - 基本语法
- Kotlin - 注释
- Kotlin - 关键字
- Kotlin - 变量
- Kotlin - 数据类型
- Kotlin - 运算符
- Kotlin - 布尔值
- Kotlin - 字符串
- Kotlin - 数组
- Kotlin - 范围
- Kotlin - 函数
- Kotlin 控制流
- Kotlin - 控制流
- Kotlin - if...else 表达式
- Kotlin - when 表达式
- Kotlin - for 循环
- Kotlin - while 循环
- Kotlin - break 和 continue
- Kotlin 集合
- Kotlin - 集合
- Kotlin - 列表
- Kotlin - 集合
- Kotlin - 映射
- Kotlin 对象和类
- Kotlin - 类和对象
- Kotlin - 构造函数
- Kotlin - 继承
- Kotlin - 抽象类
- Kotlin - 接口
- Kotlin - 可见性控制
- Kotlin - 扩展
- Kotlin - 数据类
- Kotlin - 密封类
- Kotlin - 泛型
- Kotlin - 委托
- Kotlin - 解构声明
- Kotlin - 异常处理
- Kotlin 有用资源
- Kotlin - 快速指南
- Kotlin - 有用资源
- Kotlin - 讨论
Kotlin 数组 - takeWhile() 函数
Kotlin 数组的 takeWhile() 函数用于返回一个列表,该列表包含数组中满足指定谓词的第一个元素。
这里,第一个元素表示将谓词应用于数组的第一个元素的结果,并存储在一个新列表中。
语法
以下是 Kotlin 数组 takeWhile() 函数的语法:
inline fun <T> Array<out T>.takeWhile( predicate: (T) -> Boolean ): List<T>
参数
此函数接受 **谓词** 作为参数。
返回值
此函数返回一个列表,其中包含满足谓词的第一个 n 个元素。
示例 1
以下是一个基本示例,用于演示如何使用 takeWhile() 函数返回一个列表,该列表包含小于指定谓词的第一个元素:
fun main(args: Array<String>){ var arr = arrayOf(3, 4, 5, 6) print("Array elements: ") println(arr.joinToString()) // use takeWhile function val list = arr.takeWhile({it<4}) println("list: "+ list) }
输出
上述代码生成以下输出:
Array elements: 1, 2, 3, 4, 5 List: [1, 2, 3]
示例 2
让我们看另一个例子。在这里,我们使用 **takeWhile** 函数返回一个列表,该列表包含长度小于 5 的第一个元素:
fun main(args: Array<String>){ var arr = arrayOf<String>("Lily", "Rose", "Daisy", "Lotus", "Sunflower") print("Array elements: ") println(arr.joinToString()) // use takeWhile function val list = arr.takeWhile({it.length<5}) println("first n flower having length less than 5: ") println("list:" + list) }
输出
以下是输出:
Array elements: Lily, Rose, Daisy, Lotus, Sunflower first n flower having length less than 5: list:[Lily, Rose]
示例 3
让我们看下面的例子,我们有一个 Product 对象数组,我们想使用 takeWhile() 函数显示产品价格超过 100 的前 n 个元素:
data class Product(val name: String, val price: Double) fun main(args: Array<String>) { val products = arrayOf( Product("Laptop", 999.99), Product("Mouse", 19.99), Product("Keyboard", 49.99), Product("Monitor", 199.99) ) // use takeLast function val list = products.takeWhile{it.price>100} // Display the result println("Product and Price List: $list") }
输出
上述代码产生以下输出:
Product and Price List: [Product(name=Laptop, price=999.99)]
kotlin_arrays.htm
广告