Yur*_*rii 7 java sequence collect kotlin java-stream
假设我有一个人员列表并希望拥有Map<String, Person>,其中String是人名.我应该怎么做kotlin?
hot*_*key 14
假设你有
val list: List<Person> = listOf(Person("Ann", 19), Person("John", 23))
Run Code Online (Sandbox Code Playgroud)
这个associateBy功能可能会让你满意:
val map = list.associateBy({ it.name }, { it.age })
/* Contains:
* "Ann" -> 19
* "John" -> 23
*/
Run Code Online (Sandbox Code Playgroud)
正如KDoc所说associateBy:
返回
Map包含valueTransform由keySelector应用于给定数组的元素的函数提供和索引的值的a .如果任何两个元素将具有由
keySelector最后一个返回的相同键,则将其添加到地图中.返回的映射保留原始数组的条目迭代顺序.
它适用于任何Iterable.
| 归档时间: |
|
| 查看次数: |
2219 次 |
| 最近记录: |