有没有一种方法可以在OCaml中构造列表而不使用::
运算符?
例如,我知道通常将元素按如下方式连接:
1::[2; 3; 4]
产生[1; 2; 3; 4]
。
我想知道的是,是否有可能实现一种采用以下方法的方法
cons(1 cons(2 cons(3 cons (4 nil))))
并输出相同的结果,如cons Wikipedia page所示。
谢谢。
答案 0 :(得分:2)
我认为您正在寻找List.cons
。这可以让你做
# List.(cons 1 (cons 2 (cons 3 (cons 4 []))));;
- : int list = [1; 2; 3; 4]