Kotlin | Тесты
1.55K subscribers
27 photos
464 links
Cайт easyoffer.ru
Реклама @easyoffer_adv
ВП @easyoffer_vp

Вопросы собесов t.iss.one/+OOb6zFa_-Oo3NjZi
Задачи t.iss.one/+CVnW0MJk6xZjZDc6
Вакансии t.iss.one/+KuGNaHeKkQg1NzAy
Download Telegram
🤔 Какая функция в Kotlin позволяет выполнить код только в том случае, если значение переменной не `null`?
Anonymous Quiz
32%
checkNotNull
43%
requireNotNull
16%
runNotNull
9%
alsoNotNull
💊2
🤔 Зачем нужен @Binds, когда уже есть @Provides?

-
@Provides используется, когда ты сам пишешь реализацию метода, который создаёт объект — подходит для фабричных методов или случаев с дополнительной логикой.
-
@Binds применяется, когда ты просто хочешь связать интерфейс с уже существующей реализацией, без явного кода создания. Он экономит ресурсы компиляции, так как генерирует меньше обёрток и вызывается напрямую.
@Binds предпочтительнее, если не требуется сложная логика в методе.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1💊1
🤔 Как можно в Kotlin выполнить преобразование списка строк в список их длин?
Anonymous Quiz
88%
Использование map { it.length }
4%
Применение convert { length }
4%
Вызов list.transform { it.length }
4%
Использование collect { it.length }
🤔 Как в Kotlin правильно инициализировать список, содержащий числа от 1 до 10?
Anonymous Quiz
21%
val numbers = 1..10
58%
val numbers = (1..10).toList()
17%
val numbers = listOf(1, 10)
4%
val numbers = Array(10) { i -> i + 1 }
🤔 В какие стороны может быть направлена вариантность в дженерике?

Вариантность бывает:
- In (контравариантность) — объект принимает типы, более общие, чем указанный (Consumer).
- Out (ковариантность) — объект возвращает типы, более специфичные (Producer).
- Без ограничений — используется с * или без ключевого слова, когда точная типизация не важна.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
🤔 Какой тип данных возвращает функция без явного указания типа возвращаемого значения?
Anonymous Quiz
75%
Unit
6%
Void
13%
Any
6%
Nothing
🤔 В Kotlin, какой способ позволяет создать иммутабельный список?
Anonymous Quiz
75%
listOf()
16%
mutableListOf()
5%
ArrayList()
3%
LinkedList()
🤔 Как синхронизировать корутины?

С помощью:
- Mutex — аналог Lock для корутин.
- Channel — для безопасного обмена данными.
- atomic/Volatile — при использовании из kotlinx.atomicfu.
- Использование withContext и Dispatchers для контроля над потоком.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
🤔 В Java, как можно обеспечить потокобезопасное ленивое инициализирование синглтона без использования синхронизации?
Anonymous Quiz
41%
Использовать Double Check Locking
30%
Использовать volatile
13%
Использовать внутренний статический класс
16%
Использовать synchronized
👍1🔥1
🤔 Какая функция в Kotlin используется для ленивой инициализации свойства?
Anonymous Quiz
5%
lazyOf
75%
lazy
20%
lateinit
0%
deferred
🤔 Какой жизненный цикл сервисов?

Жизненный цикл зависит от типа сервиса:
- Start Service (обычный):
- onCreate()
- onStartCommand()
- onDestroy()
- Bound Service (привязанный):
- onCreate()
- onBind()
- onUnbind()
- onDestroy()
Система может перезапустить сервис, если он был завершён (в зависимости от флага START_STICKY, START_NOT_STICKY и т.п.).


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
🤔 В Kotlin, как создать анонимный класс, реализующий интерфейс?
Anonymous Quiz
78%
object : InterfaceName {}
5%
new InterfaceName() {}
14%
class : InterfaceName {}
3%
InterfaceName.create()
💊2
🤔 В чем особенность делегатов свойств?

Делегаты в Kotlin позволяют делегировать логику управления свойствами другим объектам, что упрощает их использование. Например, lazy делегирует создание значения до первого обращения, а observable отслеживает изменения значения.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
🤔 Для чего может использоваться equals?

Метод equals используется для логического сравнения объектов — сравнение по содержимому, а не по ссылке. В data class он реализуется автоматически, иначе — нужно переопределять вручную.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
🤔 Какое значение будет у переменной val x = listOf(1, 2, 3).firstOrNull { it > 1 } ?: 0?
Anonymous Quiz
7%
1
77%
2
4%
3
13%
0
🤔 В чём отличие map и flatMap?

map используется для трансформации одного значения в другое. flatMap применяется, когда одно значение порождает целый поток данных, и нужно объединить все внутренние потоки в один внешний.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 В Kotlin, как объявить переменную, которая инициализируется только один раз и не может быть изменена после инициализации?
Anonymous Quiz
11%
lateinit var name: String
59%
val name: String
9%
lazy val name: String
20%
const val name: String