Вложенные лямбда-звонки в Котлин

Когда вы вставляете лямбда-звонки в Котлин, как я могу однозначно ссылаться на элемент этого ребенка и его родителей? Например:

 data class Course(var weekday: Int, var time: Int, var duration: Int) var list1 = mutableListOf<Course>() var list2 = mutableListOf<Course>() // populate list1 and list2 // exclude any element from list1 if it has the same time and weekday as any element from list2 list1.filter { list2.none{it.weekday == it.weekday && it.time == it.time} } 

it всегда ссылается на самый внутренний параметр лямбда, чтобы получить доступ к внешним, вы должны их назвать. Например:

 list1.filter { a -> list2.none { b -> a.weekday == b.weekday && a.time == b.time} } 

(Вы можете оставить внутренний, как it , но это немного лучше, если вы назовете это тоже, на мой взгляд.)

Изменить: @ mfulton26 связал соответствующую документацию ниже, см. Это для более подробной информации.