169 похожих чатов

Всем привет. В котлине есть .zip() которая объединяет две коллекции

в одну упаковывая в Pair. Но результат создаётся по самой короткой из коллекций.
Есть ли что-то готовое для объединения до длинной (т.е. если в одной из коллекций закончились элементы, чтобы в Pair лежал null) ?

19 ответов

8 просмотров

Такой готовой вроде нету

Две строчки кода

Alexander Nozik
Две строчки кода

ну тут дело в том, что для авторов либы это тоже 2 строчки

Iaroslav Postovalov
ну тут дело в том, что для авторов либы это тоже 2...

Кейс странный. И кодген там не нужен. На все странные кейсы писать стдлибу - так себе

Alexander Nozik
Кейс странный. И кодген там не нужен. На все стран...

нужен. вообще все преобразования всех коллекций - кодген

Iaroslav Postovalov
ну тут дело в том, что для авторов либы это тоже 2...

Туда пихать такое не стоит. А вот дополнение до заданного размера null'ами можно было бы. Тогда и эта задача решится в две строчки.

Iaroslav Postovalov
ну тут дело в том, что для авторов либы это тоже 2...

Ну, тут либо делать очень странный контракт (например, что первый в паре всегда будет лист, который более длинный), либо делать не очень приятную сигнатуру ( List<A>, List<B> -> List<Pair<A?, B?>> ) Учитывая то, что это не очень популярная вещь, то спорно.

Iaroslav Postovalov
создайте issue

А мне пока такое не пригодилось 🙂

Iaroslav Postovalov
нужен. вообще все преобразования всех коллекций - ...

в котлине? в котлине обычные преобразования коллекций вполне обходятся без кодо генерации

Alex
в котлине? в котлине обычные преобразования коллек...

все стандартные операции на коллекциях сгенерированы для iterable и всех девяти видов массивов

Alex
согласен, интересно где там "кодген" 🤔

кодген - это когда генерируется код. хоть исходный, хоть ассемблер, хоть ir

Alex
согласен, интересно где там "кодген" 🤔

https://github.com/JetBrains/kotlin/tree/master/libraries/tools/kotlin-stdlib-gen Вот тут :)

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
Кибер Бомж
8
Карта сайта