Почему @Database Room получает сущности как arrayOf в Kotlin, а Java не принимает массив? - PullRequest
0 голосов
/ 13 апреля 2020

Когда я определяю базу данных комнаты с @Database в Java:

@Database(entities = {JustSomeEntity.class}, version = 1)

Когда я определяю базу данных комнаты с @Database в Kotlin:

@Database(entities = arrayOf(JustSomeEntity::class), version = 1)

Обратите внимание на arrayOf в Kotlin версии.

См. официальную документацию для справки - вы можете переключаться Java / Kotlin там и посмотри.

Это какая-то разновидность Java / Kotlin / аннотаций? Это почему? Откуда это?

1 Ответ

1 голос
/ 13 апреля 2020

В Java фигурные скобки определяют массив значений. См. Документы:

Alternatively, you can use the shortcut syntax to create and initialize an array:

int[] anArray = { 
   100, 200, 300,
   400, 500, 600, 
   700, 800, 900, 1000
};

https://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html

...