Допустим, у меня есть массив типа Record[]
, и я хочу создать из него ассоциативный массив с ключом rec.key
. Есть ли простой способ сделать это?
Как создать ассоциативный массив из диапазона в D
Ответы (1)
Да, вы можете использовать библиотеки std.array
, std.typecons
и std.algorithm
и создать этот однострочный код:
Record[Key] assocArray = array.map!( item => tuple( item.key, item ) ).assocArray;
Он берет array
, сопоставляет его с кортежем (Key, Record)
, а затем берет этот список кортежей и создает из него ассоциативный массив.
person
Danol
schedule
08.03.2018