Wie kann ich den Variablentyp in Kotlin finden? In Java gibt es instanceof
, aber Kotlin existiert nicht:Get Typ einer Variablen in Kotlin
val properties = System.getProperties() // Which type?
Wie kann ich den Variablentyp in Kotlin finden? In Java gibt es instanceof
, aber Kotlin existiert nicht:Get Typ einer Variablen in Kotlin
val properties = System.getProperties() // Which type?
Sie Reflexion verwenden können, das zu tun:
val widget = ...
println("${widget::class.qualifiedName}") // with package name or...
println("${widget::class.simpleName}") // ... only class name
Bitte beachten Sie:
Auf der Java-Plattform, die Die für die Verwendung der Reflexionsfunktionen erforderliche Laufzeitkomponente wird als separate JAR-Datei (kotlin-reflect.jar) verteilt. Dies wird durchgeführt, um die erforderliche Größe der Laufzeitbibliothek für Anwendungen zu reduzieren, die keine Reflexionsfunktionen verwenden. Wenn Sie Reflektion verwenden, stellen Sie sicher, dass die .jar-Datei zum Klassenpfad Ihres Projekts hinzugefügt wird.
Quelle: https://kotlinlang.org/docs/reference/reflection.html#bound-class-references-since-11
für einen bestimmten Typ Um zu testen, können Sie den is
Operator verwenden.
if(widget is Widget) {
// ...
}