Kotlin recibe el tipo de cadena

No puedo encontrar cómo get el tipo de una variable (o constante) como String , como typeof(variable) , con el lenguaje Kotlin. ¿Cómo lograr esto?

Puede usar uno de los methods que mejor se adapte a sus necesidades:

 val obj: Double = 5.0 System.out.println(obj.javaClass.name) // double System.out.println(obj.javaClass.kotlin) // class kotlin.Double System.out.println(obj.javaClass.kotlin.qualifiedName) // kotlin.Double 

Puedes jugar con esto aquí .

http://kotlinlang.org/docs/reference/typecasts.html

 if (obj is String) { print(obj.length) } if (obj !is String) { // same as !(obj is String) print("Not a String") } 

Está buscando el operador instanceof

La palabra key instanceof se puede usar para probar si un object es de un tipo especificado

 String s = "Hello"; if (s instanceof java.lang.String) { System.out.println("is a String"); //this prints out } 

Para get información sobre la class de un object, llame al método getClass que tiene cada object (reside en el Object superclass). Esto devuelve un object de class (un poco confuso, lo sé). Desde allí, puede llamar a getName o getCanonicalName (conozca las diferencias aquí ). Por lo tanto, su código se vería así:

 System.out.println(this.getClass().getName()); 
  • parámetro de function final o val o en Kotlin?
  • Android Kotlin create class implement Parcelable da un error en 'anulación' del método writeToParcel
  • Afirmación con post de error en Kotin
  • ¿Cómo configurar correctamente el complemento de Kotlin para Gradle?
  • Delegación de Kotlin a expresión en lugar de reference fija
  • Overriding val definido en la interfaz mediante el uso de var con el mismo nombre definido en la superclass
  • Clase de datos Kotlin de Json utilizando GSON
  • Mantenga BaseActivity en Java compatible con la actividad de Kotlin
  • Hibernate OneToMany enlace incorrecto desde el padre
  • El pact proveedorVerify no está recogiendo el file JSON Pact
  • ¿Es un val de instancia más costoso que el object compañero val?