В F # какой самый функциональный и идиоматический способ создания или «обновления» 100 новых объектов в список.
Я думаю, для примера мы могли бы использовать DateTime в качестве примера объекта.
В F # какой самый функциональный и идиоматический способ создания или «обновления» 100 новых объектов в список.
Я думаю, для примера мы могли бы использовать DateTime в качестве примера объекта.
В качестве альтернативы, как выражение списка:
[for i in 1..100 -> new System.DateTime()]
Но я думаю, что это менее идиоматично.
(Seq.initInfinite id)
— это, например, неотрицательные целые числа.
- person wmeyer; 08.04.2011
List.replicate
, Seq.take
, Seq.iter
и так далее. F# также имеет некоторые приятные преимущества, например, List.ofArray
не вызывает переполнения стека, как getElems
в Haskell. Ну что ж...
- person J D; 10.04.2011
я бы подумал об использовании
[|for i in 1..100 -> new System.DateTime() |]
так как вы работаете с изменяемыми данными.
DateTime
изменчив?
- person Joel Mueller; 09.04.2011
Map
. Изменение изменяемого ключевого элемента Map
, безусловно, плохая идея.
- person wmeyer; 09.04.2011
List.init 100 (fun _ -> DateTime())
- person Daniel; 08.04.2011