例如如果你有一個功能(fun x -> x+1)
並且你想把它映射到[1; 2; 3]
。但您只想在x=1
時將其映射,以便輸出爲[2; 2; 3]
。你怎麼做到這一點?如何將函數映射到列表中的某些元素?
使用OCaml的,我想:
let rec foo (input : int list) : int list =
match input with
| [] -> []
| hd::tl -> List.map (fun x -> if x=1 then (x+1)) input;;
我累了, '何時' 的語句,但無濟於事。
我覺得我嘗試過,但它不起作用 - 但它現在才起作用。 Rockstar,你。 感謝您提供'何時'的提示。 – Aspen 2011-12-15 09:49:50