val result= arrStudent.map {
it.name= it.name.toUpperCase() // transforming name to upper case
it.className=it.className+1 // increasing class by 1
it // <- Note that we return it, because list will be prepared of the object which is returned by last statement of map
}
Log.d("modified_list", result.toString())
2条答案
按热度按时间4dc9hkyq1#
map
在内部创建一个新的列表,并将其结果放入该列表中,然后返回该列表:如果使用
mapTo
,则可以通过提供自己的列表作为第一个参数来指定放置Map元素的目标:如果提供给你的列表中已经有了元素,那么这些元素将被保留,新的元素将被添加到这些元素中。为方便起见,它还返回目的地列表。
42fyovps2#
**map:**map可以转换你的数据(List),可以返回完整的修改列表或者模型变量的List,例如:
你有一个模型:
现在从arrayOfStudent,我们希望所有学生的名字都是大写字母,所以像这样应用map:
输出将是:
现在,如果你想要整个学生列表,名字用大写字母,className加1,让我们这样做:
输出将是:
mapTo:如果你想把你的列表转换成一个不同类型的列表,那么使用mapTo,例如,我们有一个不同的数据类,名为:CompactStudent
现在,如果我们想将List转换为List,请注意
CompactStudent
包含id
和name
,但与Student
模型相比,没有className
,所以要做到这一点:输出将是: