La label no denota un bucle en paraCada

Continúo desde un loop en Kotlin pero recibo la advertencia del estudio de que la label no denota un bucle. ¿Podría alguien decirme qué hay de malo en la syntax?

Aquí está el segmento del código

newRooms.forEach roomloop@ { wallRoom: WallRoom -> val index = rooms.indexOf(wallRoom) if(index!=-1) { val room = rooms[index] //get the corresponding room. //check if the last session is same in the room. if(wallRoom.topics.last().fetchSessions().last()==room.topics.last().fetchSessions().last()) { continue@roomloop } 

La expresión lambda labelda aquí es una function literal, no un bucle.

No puede break o continue la expresión lambda aquí porque es independiente del for-loop.

 public inline fun <T> Array<out T>.forEach(action: (T) -> Unit): Unit { for (element in this) action(element) } 

Puede usar return para regresar de la function.

 return@roomloop 

Tenga en count que los segmentos de código a continuación se comportan igual que el otro, ambos imprimirán 123 :

 arrayOf(1, 2, 3).forEach label@ { print(it) return@label } label@ for (i in arrayOf(1, 2, 3)) { print(i) continue@label } 
  • ¿Qué tipo de time de compilation debo asignar para recibir un valor de retorno de java.util.Map <TextAttribute,?>
  • Compruebe nulo en la function de map en Kotlin
  • Soporte de Base64 para diferentes niveles de API
  • asegúrese de que el método de Kotlin sea estático, de nivel superior o anotado @JvmStatic
  • Validación del método Hibernate
  • Solo las dependencies se copyn cuando se implementan plugins intellij
  • Cómo mostrar el mes holandés usando Joda DateTime
  • Convertir pnetworkingicado kotlin en java
  • LinkageError en una instancia de la class Kotlin con método notify ()
  • Determinando un pivote de ScaleAnimation
  • Ignorar setter y establecer propiedad directamente