Kotlin 中List常见的lambda语法糖

2023-07-02  本文已影响0人  coke613
在kotlin中,List 类型提供了许多lambda语法糖,这使对列表进行各种操作都很方便和简洁,以下是一些常用的lambda语法糖实例.
  1. forEach: 用于遍历列表中的每一个元素,并对每个元素执行特定操作.
val list = listOf(1, 2, 3, 4, 5)

// 使用 lambda 表达式打印每个元素
list.forEach { println(it) }

// 使用函数引用方式打印每个元素
list.forEach(::println)
  1. map: 函数映射,对列表中的每一元素进行置换,并返回一个新的列表
val list = listOf(1, 2, 3, 4, 5)
// 将每个元素乘以 2
val doubledList = list.map { it * 2 }
println(doubledList) // 输出:[2, 4, 6, 8, 10]


val list2 = listOf<String>("a", "b", "c", "d")
// 将每一个元素大写
val upperCaseList = list2.map {it.toUpperCase()}
println(upperCaseList) // 输出:[A,B,C,D]
  1. filter: 根据给定的条件过滤列表的元素,返回符合条件的新列表.
val list = listOf(1, 2, 3, 4, 5)
// 过滤出大于 3 的元素
val filteredList = list.filter { it > 3 }
println(filteredList) // 输出:[4, 5]

4.reduce: 对列表中的元素进行累积运算.

val list = listOf(1, 2, 3, 4, 5)
// 对所有元素进行累积相加
val sum = list.reduce { acc, num -> acc + num }
println(sum) // 输出:15

val list =  listOf<Int>(2,10,23,15)
// 对所有元素进行累积相减
val less =  list.reduce { acc, i -> acc- i }
println(less)  // 输出: -46

5.any:用于判断集合中的元素是否至少有一项满足制定条件 ||

val list = listOf(1, 2, 3, 4, 5)
// 检查是否有任何元素大于 3
val anyGreaterThanThree = list.any { it > 3 }
println(anyGreaterThanThree) // 输出:true

6:all: 用于判断集合中是否所有元素都满足制定条件 &&

val list = listOf(1, 2, 3, 4, 5)
// 检查是否所有元素都大于 3
println(list.all { it > 3 }) // 输出:fasle
上一篇 下一篇

猜你喜欢

热点阅读