微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 f# 中合并数组

如何解决如何在 f# 中合并数组

没有找到连接数组的方法函数,“@”和“+”运算符不起作用

是否有任何简单的函数或运算符可以做到这一点

就像在 js [...array1,element1,elment2] 中一样

给定

let a = [|1;2;3|]
let b = [|2;3;4|]

想要

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 保持元素的顺序

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。