¿Cómo comprobar la clase "instanceof" en Kotlin?
En la clase Kotlin, tengo un parámetro de método como objeto (consulte el documento de Kotlin aquí ) para el tipo de clase T. Como objeto, paso diferentes clases cuando llamo al método. En Java podemos comparar la clase que usa instanceof
el objeto y qué clase es.
Entonces, quiero verificar y comparar en tiempo de ejecución qué clase es.
¿Cómo puedo consultar instanceof
la clase en Kotlin?
Aceptado
Usar is
.
if (myInstance is String) { ... }
o al revés!is
if (myInstance !is String) { ... }
Combinando when
y is
:
when (x) {
is Int -> print(x + 1)
is String -> print(x.length + 1)
is IntArray -> print(x.sum())
}
copiado de la documentación oficial