
Albert
10.07.2018
14:19:08

Andrey
10.07.2018
14:22:01

Albert
10.07.2018
14:25:08
ну ладно. это баловство

Google

Albert
10.07.2018
14:25:21
в идеи - да

Dmitry
10.07.2018
14:38:30
class MyJobService : JobService() {...}
val myJob = dispatcher.newJobBuilder()
.setService(MyJobService::class.java) //error
Type inference failed. Expected type mismatch:
required:
Class<out JobService!>!
found:
Class<MyJobService>
wtf? setService() is a java method.
Типично, ровно такой же класс из другого пути утащил, с такими же методами...

Egor
10.07.2018
14:40:54
Мб импорт не тот?

Dmitry
10.07.2018
14:41:49
Да, так точно, надо больше самому думать перед тем как постить -)

dimiii
10.07.2018
14:41:53

Dmitry
10.07.2018
14:45:02
Я вот тоже про вариантность подумал, а на самом деле такой же класс по другому пути импортнул

Eugeny
10.07.2018
14:46:45
Почему при объявлении лямбды как локальной переменной нельзя использовать несколько return в теле лямбды в отличие от лямбд передаваемых как аргументы в функции?

Quantum Harmonizer
10.07.2018
14:50:30

Dimon
10.07.2018
14:53:37
Ты же не можешь в реализации интерфейса return указать для вызываемой функции?

Andrey
10.07.2018
14:53:56

Google

Dimon
10.07.2018
14:54:02
если так сильно хочеться - пиши inline fun
хотя не, это тоже бред

Eugeny
10.07.2018
14:54:27
val function = { i: Int ->
if (i == 2) {
return 5}
return 6
}
Типа такого, с телефона

Dimon
10.07.2018
14:54:53
у тебя не указан тип лямбды

Quantum Harmonizer
10.07.2018
14:54:59

Dimon
10.07.2018
14:55:18
val function: (Int)->Int

Quantum Harmonizer
10.07.2018
14:55:25
а это, видимо, присвоение в проперти

Eugeny
10.07.2018
14:55:28

Quantum Harmonizer
10.07.2018
14:55:40

Dimon
10.07.2018
14:55:42
либо val function = fun(i:Int): Int {}

Eugeny
10.07.2018
14:55:56
Это локальная переменная

Dimon
10.07.2018
14:55:56
ну как по мне его явно лучше указать
ну тогда хз

Andrey
10.07.2018
14:57:38

Quantum Harmonizer
10.07.2018
14:58:06

Dimon
10.07.2018
14:58:27
та у меня вопросов нет
что мне объяснять

Eugeny
10.07.2018
14:58:59

Dimon
10.07.2018
14:59:49
я ж то же самое написал

Google

Dimon
10.07.2018
14:59:54

Quantum Harmonizer
10.07.2018
15:01:17
лол

Dumitru
10.07.2018
15:01:24
))

Andrey
10.07.2018
15:02:03
Точно. Спасибо
А конкретно для вашего примера короче будет так:
val function = { i: Int -> if (i == 2) 5 else 6 }

Dimon
10.07.2018
15:02:55

Quantum Harmonizer
10.07.2018
15:03:25
именно так будет работать

Dimon
10.07.2018
15:03:32
должно

Andrey
10.07.2018
15:03:33

Dimon
10.07.2018
15:03:46
а бля, не заметил что ретёрна нет

Dumitru
10.07.2018
15:04:06
Похоже всю жизнь в чатах kotlin будет примеры как можно сделать короче :)

Dimon
10.07.2018
15:04:20
а что тут ещё делать то
если б мы не хотели делать короче, то на джаве писали бы

Andrey
10.07.2018
15:04:45

Dumitru
10.07.2018
15:05:02
Все верно, я просто уточняю нашу деятельность

Dimon
10.07.2018
15:05:26
надо тогда группу переименовать
"Котлин короче"

Andrey
10.07.2018
15:06:55
Вспомнилось на тему короче: https://vk.com/just_wiki

Eugeny
10.07.2018
15:11:26
Условная логика в лямбдах дело само по себе такое, квешнбл, тут именно почему так происходит заинтересовался

Quantum Harmonizer
10.07.2018
15:12:58

Google

Quantum Harmonizer
10.07.2018
15:13:23

Mikhail
10.07.2018
15:14:31

Eugeny
10.07.2018
15:14:55

Mikhail
10.07.2018
15:15:17
ну так условные выражения никто не отменял

Quantum Harmonizer
10.07.2018
15:15:19

Admin
ERROR: S client not available

Eugeny
10.07.2018
15:15:33
Но вообще если в лямбде сложная логика с условиями, то лучше в класс запихивать или хотя бы в отдельный метод

Mikhail
10.07.2018
15:16:04

Eugeny
10.07.2018
15:16:06
А не инлайнить в бади нечитаемую порнуху

Mikhail
10.07.2018
15:17:16
мы явно где-то друг друга не поняли

Eugeny
10.07.2018
15:17:17
А нечитаемая процедурная порнуха прямо в лямбде не нужна

Simon
10.07.2018
15:17:22
Вот у листа есть windowed который формирует List<List<>>, оператора что делает обратное же нет?

Quantum Harmonizer
10.07.2018
15:17:35

Mikhail
10.07.2018
15:17:47

Simon
10.07.2018
15:18:39
спс

Igor
10.07.2018
15:19:32
flatten

Mikhail
10.07.2018
15:19:34

Eugeny
10.07.2018
15:20:06
Ок

Google

Andrey
10.07.2018
15:24:02
А нечитаемая процедурная порнуха прямо в лямбде не нужна
Есть серъезный вопрос насчёт того, с каких пор условные выражения стали процедурной порнухой?
Особенно с учётом того, что они есть практически во всех чисто функциональных ЯП.
Вот множественые return - да, вполне себе порнография. Притом как в лямбдах, так и в методах.

Rahimjon
10.07.2018
15:24:40
kotlin best practics

Quantum Harmonizer
10.07.2018
15:25:10

Rahimjon
10.07.2018
15:25:21
кто знаеть

Andrey
10.07.2018
15:43:24

Alexei
10.07.2018
19:24:18
всем привет тут у нас товарищи о https://www.graalvm.org/ заговорили типо оно прод реди что гдет уже юзается и все дела. Кто что думает по этому поводу? а то мне эта штукенция выглядит достойной заменой котлин нейтив, не?

Anton
10.07.2018
19:26:17

Alexei
10.07.2018
19:27:11
ну понятно что не у всех повсеместно и что не прям супер стабильная штука
но у них там релиз версия вроде как есть

Mikhail
10.07.2018
19:29:13

lenar
10.07.2018
19:30:18

Bogdan
10.07.2018
19:59:03

Alexei
10.07.2018
19:59:28
спасибо вики
и вроде это не то
вопрос то был не в том как они это сделали

Bogdan
10.07.2018
20:13:27
спасибо вики
это со своих слов, еще был текст но я решил его стереть