例如,如果您有一个函数
使用OCaml,我尝试了:
(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;;
我曾尝试使用“when”语句,但没有成功。