javaClass в kotlin возвращает неожиданный тип - PullRequest
1 голос
/ 03 ноября 2019

Я хотел знать базовый Java-класс для этого

    val x: Array<Int> = arrayOf(1, 2, 3, 4, 5)
    val y: List<Int> = listOf(1, 2, 3, 4, 5)
    println(x.javaClass)
    println(y.javaClass)

Вывод

class [Ljava.lang.Integer;

class java.util.Arrays $ ArrayList

Может кто-нибудь указать, что такое [Ljava.lang.Integer Я что-то упустил?

1 Ответ

3 голосов
/ 03 ноября 2019

Это допустимое строковое представление типа Integer[]. Вы фактически вызываете неявный toString() с помощью println(), что вызывает getName(). Вы можете найти документацию этой схемы именования здесь:

https://docs.oracle.com/javase/6/docs/api/java/lang/Class.html#getName()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...