Вопросы с тегом «kotlin»

Kotlin - это язык программирования с открытым исходным кодом, статически типизированный, поддерживаемый JetBrains. Kotlin сочетает в себе ООП и функциональные возможности и ориентирован на совместимость, безопасность, ясность и поддержку инструментов. В настоящее время он нацелен на JVM и JavaScript, и это официально поддерживаемый язык для Android.

2
Kotlin сопрограммы «случается раньше» гарантирует?
Предоставляют ли сопрограммы Kotlin какие-либо гарантии «произойдет раньше»? Например, существует ли гарантия «происходит до» между записью в mutableVarи последующим чтением (потенциально) в другом потоке в этом случае: suspend fun doSomething() { var mutableVar = 0 withContext(Dispatchers.IO) { mutableVar = 1 } System.out.println("value: $mutableVar") } Редактировать: Может быть, дополнительный пример прояснит …

1
База данных комнат со встроенным классом Kotlin в качестве поля Entity
Я пытаюсь заставить Room ( https://developer.android.com/topic/libraries/architecture/room ) работать со встроенными классами Kotlin, как описано в статье Джейка Уортона « Встроенные классы, которые создают отличные идентификаторы базы данных» : @Entity data class MyEntity( @PrimaryKey val id: ID, val title: String ) inline class ID(val value: String) При составлении этого номера жалуется, …

1
Как покрыть ненужную нулевую проверку, сгенерированную Kotlin?
Рассмотрим следующий минимальный пример Kotlin: fun <U> someWrapper(supplier: () -> U): () -> (U) { return { supplier() } } fun foo(taskExecutor: TaskExecutor): Int { val future = CompletableFuture.supplyAsync(someWrapper { 42 }, taskExecutor::execute) return future.join() } @Test public void shouldFoo() { assertThat(foo(), is(42)); } У меня есть правила покрытия ветвей …

1
Сбой синхронизации Gradle: неподдерживаемый метод: KotlinPlatformContainer.supports ()
Я только что обновил Android Studio до последней версии 3.5.1 и знаю, что получаю следующую ошибку: Ошибка синхронизации: не поддерживается метод: KotlinPlatformContainer.supports (). Версия Gradle, к которой вы подключаетесь, не поддерживает этот метод. Для решения проблемы вы можете изменить / обновить целевую версию Gradle, к которой вы подключаетесь. Кроме того, …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.