我没有找到可以连接数组的方法或函数,且 "@" 和 "+" 运算符不能使用。
是否有任何简单的函数或运算符可以实现这一点,就像在 JavaScript 中的 [...array1, element1, elment2]。
已知:
let a = [|1;2;3|]
let b = [|2;3;4|]
want
let c = [|1;2;3;4|]
let d = [|1;2;3;2;3;4|]
根据您的业务需求,如果经常进行追加操作,数组可能不是最适合您的数据结构。
数组推导式语法提供了类似的功能,yield! 可以生成数组,并且单个元素可以直接使用。
[| yield! a; 4] = [| 1; 2; 3; 4|]
[| yield! a; yield! b |] = [|1; 2; 3; 2; 3; 4|]
let c = Array.distinct (Array.concat [a; b])
let d = Array.concat [a; b] // allows arbitrary count of elements
更新:
Array.distinct
保留元素的顺序。
@
是List.append
的简写。同样地,你可以使用Array.append a b
来操作数组。 - Asti