
Egor
28.07.2018
20:54:39
Точнее, !is

Quantum Harmonizer
28.07.2018
20:54:42
() -> Unit — это подтип Function<Unit>

Egor
28.07.2018
20:54:58
А, вот так? Окей

Quantum Harmonizer
28.07.2018
20:54:59
{} is Function<*> // true

Google

Egor
28.07.2018
20:55:15
Не знал, круто

Sander
28.07.2018
22:11:11
val list = arrayListOf<Int>()
как задать initialCapacity: Int = 0, используя arrayListOf?

Bogdan
28.07.2018
22:12:28

Sander
28.07.2018
22:14:54
ну я смотрю,
public fun <T> arrayListOf(vararg elements: T): ArrayList<T> =
if (elements.size == 0) ArrayList() else ArrayList(ArrayAsCollection(elements, isVarargs = true))
и что я должен увидеть
example:
val list = arrayListOf<Int>() - тут не могу
var list2 = ArrayList<Int>(5) - тут могу

Dibro
28.07.2018
22:17:19
это бессмысленно

Sander
28.07.2018
22:17:42
это пример просто

Bogdan
28.07.2018
22:18:01

Dibro
28.07.2018
22:18:35

Sander
28.07.2018
22:18:52

Bogdan
28.07.2018
22:19:54

Google

Sander
28.07.2018
22:20:30
тогда arrayListOf - не всегда подходит и придется использовать ArrayList,
просто до этого я спрашивал вопрос, что использовать arrayListOf или ArrayList,
на что мне ответили, использовать arrayListOf.

Bogdan
28.07.2018
22:21:38
тебе скорей всего нужен mutableArrayListOF

Dibro
28.07.2018
22:22:05

Sander
28.07.2018
22:22:30
как-то в Kotline все усложнено, в Java как-то все попроще...

Bogdan
28.07.2018
22:22:48

Dibro
28.07.2018
22:23:15
разве ?
arrayListOf(...) возвращает (как ни странно) ArrayList
а ArrayList в котлине мутабельная, т.к. есть метод .add(...)

Sander
28.07.2018
22:28:33
val list3 = arrayListOf<Int>(1,2,3).apply { ensureCapacity(5) } - хотя тоже нормально, можно сразу данные в коллекцию добавить.

Bogdan
28.07.2018
22:28:37

Dibro
28.07.2018
22:28:55

Bogdan
28.07.2018
22:29:00

Sander
28.07.2018
22:29:11
смысле?
val list3 = arrayListOf<Int>(1,2,3).apply { ensureCapacity(5) } - вот так можно!

Bogdan
28.07.2018
22:29:51

Sander
28.07.2018
22:30:57
да но как узнать что так можно делать?
в доках особо ничего нет по этому - https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/array-list-of.html

Bogdan
28.07.2018
22:31:13

Sander
28.07.2018
22:31:24
ну Java тут не причем

Google

Bogdan
28.07.2018
22:32:02

Sander
28.07.2018
22:32:42
var list2 = ArrayList<Int>(5).apply { ensureCapacity(5) }

Bogdan
28.07.2018
22:32:55

Sander
28.07.2018
22:32:57
как догадаться что вот через apply - так можно

Bogdan
28.07.2018
22:33:08

Sander
28.07.2018
22:33:17
какую

Bogdan
28.07.2018
22:33:24
я сылку кинул

Sander
28.07.2018
22:33:40
там ничего нет я уже эту доку читал

Dibro
28.07.2018
22:34:11
ты мог написать банально
val list = arrayListOf(...)
list.ensureCapacity(...)
...

Sander
28.07.2018
22:34:42
var list2 = ArrayList<Int>(5).ensureCapacity(5)

Bogdan
28.07.2018
22:34:42

Bogdan
28.07.2018
22:35:30

Sander
28.07.2018
22:36:17

Bogdan
28.07.2018
22:36:56

Dibro
28.07.2018
22:37:07

Bogdan
28.07.2018
22:37:30
он джаву вроде не учил, спразу с котлина

Sander
28.07.2018
22:37:35
от куда мне знать? в доках дают самые basic знания,
дальше уже сам разбирайся, вдоках всей инфы нет
может в Java доке есть

Google

Bogdan
28.07.2018
22:37:55

Ilya
28.07.2018
22:38:43
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-array-list/-array-list/ensure-capacity.html
ахах)

Bogdan
28.07.2018
22:38:53
круто

Dibro
28.07.2018
22:40:23

Admin
ERROR: S client not available

Bogdan
28.07.2018
22:41:05

Dibro
28.07.2018
22:41:31

Bogdan
28.07.2018
22:41:57

Dibro
28.07.2018
22:42:03

Sander
28.07.2018
22:43:23
такое ощущения что желание учится -1
вот только не начинай пожалуйста, может я хреново искал и не нашел,
и не стоит судить людей, если бы желания не было - то я бы и не учил, уж тем более не спрашивал.

Bogdan
28.07.2018
22:45:03

Sander
28.07.2018
22:46:15

Dibro
28.07.2018
22:48:20

Sander
28.07.2018
22:50:10
там по default стоит 10, если я не ошибаюсь,
если я знаю что у меня размер коллекции будет больше, то разумно будет увеличить его ...
вместо того чтоб он потом каждый раз в натайме его увеличивал, что будет довольно медленно.

Bogdan
28.07.2018
22:54:28

Dibro
28.07.2018
22:56:07

Google

Bogdan
28.07.2018
22:56:55
но если он это имел ввиду то да, тоже самое

Sander
28.07.2018
22:57:26
я это и имел ввиду
?

Friedrich
29.07.2018
06:00:58
Ну, грубо говоря, сначала может быть выделен массив под 3 элемента, а потом он будет расширен до 5. Неэффективненько получается!

Quantum Harmonizer
29.07.2018
07:42:11
разве ?
Более того, даже listOf(1, 2, 3) — мутабельная коллекция.

Mi
29.07.2018
07:43:38
Для мутабельных же есть mutableListOf

Quantum Harmonizer
29.07.2018
07:44:15

Mi
29.07.2018
07:44:57
А оно разве не создаёт имплементации которые падают на методе изменения?

Quantum Harmonizer
29.07.2018
07:47:17
Метод add у них не работает, т. к. там фиксированный массив. А set — вполне.

Alexander
29.07.2018
09:22:57

Quantum Harmonizer
29.07.2018
09:24:16
> но придётся кастить, а за это надо лапки отрывать)

Андрей
29.07.2018
09:35:12
кто-нибудь юнит тесты для корутин писал?
Method myLooper in android.os.Looper not mocked.
постоянно
даже если стоит только что-нибудь типа