- 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
廣告