Creando gamas exclusivas en kotlin

Estoy empezando con Kotlin . Quiero crear un range de 1 a n donde n está excluded . Descubrí que Kotlin tiene ranges y puedo usarlos de la siguiente manera

1..n

pero este es un range inclusive que incluye 1 y n . ¿Cómo creo gamas exclusive ?

No estoy seguro de si esta es la mejor manera de hacerlo, pero puede definir una extensión Int que crea una IntRange desde (límite inferior +1) a (límite superior – 1).

 fun Int.exclusiveRangeTo(other: Int): IntRange = IntRange(this + 1, other - 1) 

Y luego úsalo de esta manera:

 for (i in 1 exclusiveRangeTo n) { //... } 

Aquí puede encontrar más detalles sobre cómo funcionan los ranges.

Puede usar la function hasta en Kotlin stdlib:

 for (i in 1 until 5) { println(i) } 

Que se imprimirá:

 1 2 3 4 
  • ¿Cómo comparar dos matrices en Kotlin?
  • Formatee Kotlin String con múltiples ocurrencias
  • Herencia en Kotlin
  • Registro de SQL con Expuesto en Spring Boot
  • Cómo se opone Kotlin y objects complementarios y perezosos funciona con memory
  • Property getter tipeado en Supertipo en lugar de Implementación en Kotlin
  • Requiere Anotaciones de la emisión con "allOf" en Kotlin
  • Cómo get la class de parámetro genérico en Kotlin
  • ¿Cómo puedo conectar un productor a un actor?
  • Clase de extensión genérica con object compañero en Kotlin
  • Kotlin, cómo recuperar el valor del campo a través de la reflexión