Size: a a a

2019 October 16

VS

Vadim Sheva in Kotlin Start
Всё равно очень благодарен
источник

TT

Turalllb Turalll in Kotlin Start
Товарищи, я уже задавал этот вопрос и вроде получил хороший ответ, но никак не вспомню какой(( прям вообще вылетело из головы.  Я вот что хочу    getOrNull()?.let {
   // code block
} ?: { //code block}
источник

TT

Turalllb Turalll in Kotlin Start
как выполнить блок кода , если null
источник

TT

Turalllb Turalll in Kotlin Start
вроде какая то приятная запись была..
источник

AM

Andrew Mikhaylov in Kotlin Start
also вместо let. А ещё лучше локальная переменная и нормальный иф.
источник

TT

Turalllb Turalll in Kotlin Start
Andrew Mikhaylov
also вместо let. А ещё лучше локальная переменная и нормальный иф.
т.е. let есть смысл использовать если результат null либо не обрабатываем либо в одну строчку какую то мелочь делаем ?
источник

TT

Turalllb Turalll in Kotlin Start
ладно, я понял, спасибо
источник

AM

Andrew Mikhaylov in Kotlin Start
Turalllb Turalll
т.е. let есть смысл использовать если результат null либо не обрабатываем либо в одну строчку какую то мелочь делаем ?
let есть смысл использовать, когда вы хотите результат лямбды использовать.
источник

AM

Andrew Mikhaylov in Kotlin Start
Это единственная разница с also -- let возвращает результат лямбды как свой результат, also -- изначальный объект. То же самое касается run и apply.
источник

TT

Turalllb Turalll in Kotlin Start
да, это понятно, просто после let можно поставить элвис оператор и еще что то делать, и от этого в дальнейшем появляется желание какой то блок кода выполнить после let. Хотя явно видно что это просто в if else превращается.
источник

TT

Turalllb Turalll in Kotlin Start
Спасибо
источник

ВС

Виталий Сердюк in Kotlin Start
Всем привет.
Дайте пожалуйста пример как создать:
Array<Class>(size) { "yield?" }
с помощью yield
источник

ВС

Виталий Сердюк in Kotlin Start
 val grid = Array<Rectangle>(16 * height) {
       val offsetX = 8f
       Rectangle(
               (it and 15).toFloat() * cellSize + offsetX,
               (it and 240).toFloat(),
               cellSize.toFloat(),
               cellSize.toFloat()
       )
   }

мне нужно пропустить создание каждаго 16-го объекта.
Вот думаю yield мне поможет под управлением fori

точнее: каждый объект X которого равен 248

...
если проще, то мне просто иногда нужно пропустить создание объекта при определенных критериях :)
источник

K

Kirill in Kotlin Start
можно как-то это упростить?
val value :String = CarImage.removeOther(str
               .map { CarImage.Translit(Character.toUpperCase(it)) }
               .joinToString(""))
               .map { CarImage.Translit(Character.toUpperCase(it)) }
               .joinToString("")
смущает   .joinToString(""))
но .map {  возвращает List<Char> и пока других способов не нашел
источник

AL

Alexander Levin in Kotlin Start
Виталий Сердюк
Всем привет.
Дайте пожалуйста пример как создать:
Array<Class>(size) { "yield?" }
с помощью yield
Такая конструкция не использует yield, внутри лямбды просто создание конкретного объекта по индексу.

yield есть для создания Sequence и насколько помню, для Array непосредственно его нету.
источник

ВС

Виталий Сердюк in Kotlin Start
я могу создать это со всеми объектами и создать еще один массив и перенести туда только нужные объекты... но эт как то громоздко
источник

ВС

Виталий Сердюк in Kotlin Start
Alexander Levin
Такая конструкция не использует yield, внутри лямбды просто создание конкретного объекта по индексу.

yield есть для создания Sequence и насколько помню, для Array непосредственно его нету.
а другой способ создать  Array<T> есть ?
источник

ВС

Виталий Сердюк in Kotlin Start
я чет подумал что yield в for  работает
источник

AM

Andrew Mikhaylov in Kotlin Start
А как ты собрался массив с дырками делать?
источник

ВС

Виталий Сердюк in Kotlin Start
Alexander Levin
Такая конструкция не использует yield, внутри лямбды просто создание конкретного объекта по индексу.

yield есть для создания Sequence и насколько помню, для Array непосредственно его нету.
пардон, меж строк читаю, а можно пример как с секвенцией его юзать ?
источник