Как вы считаете, чем руководствовался программист который написал так?
Причем этот код может вызываться в цикле.
data class Data1(
val list1: Collection<Entity1> = listOf(),
val list2: Collection<Entity2> = listOf()
) {
fun concat(more: Data1): Data1 {
return Data1(
this.list1 + more.list1,
this.list2 + more.list2
)
}
Чем это лучше чем такой код:
data class Data1(
val list1: MutableList<Entity1> = mutableListOf(),
val list2: MutableList<Entity2> = mutableListOf()
) {
fun concat(more: Data1): Data1 {
list1.addAll(more.list1)
list2.addAll(more.list2)
return this
}
}