F#删除数组中的某个元素

F#删除数组中的某个元素,f#,F#,我在F#数组模块中进行了研究,但似乎没有任何函数可以从数组中删除某个元素。我只是想知道是否存在这样的函数 例如 更新 数组过滤器是我要找的。除此之外,对我的情况要具体一点 如果我拥有的数组不是普通类型数组,而是特定于类的引用数组。假设我只想删除member.order=2的元素,那么谓词是什么 您可以使用F#数组模块功能实现此功能,如下所示: > [| 0 ; 1 ; 2 ; 3 ; 4 |] |> Array.filter ((<>)2);; val it : int

我在F#数组模块中进行了研究,但似乎没有任何函数可以从数组中删除某个元素。我只是想知道是否存在这样的函数

例如

更新

数组过滤器是我要找的。除此之外,对我的情况要具体一点


如果我拥有的数组不是普通类型数组,而是特定于类的引用数组。假设我只想删除
member.order=2
的元素,那么谓词是什么

您可以使用F#
数组
模块功能实现此功能,如下所示:

> [| 0 ; 1 ; 2 ; 3 ; 4 |] |> Array.filter ((<>)2);;
val it : int [] = [|0; 1; 3; 4|]

我还要指出,这两个函数都解决了一个稍微不同的愚蠢问题:从数组中删除满足条件的所有元素。从字面上看,您的问题可能被理解为仅删除元素的第一次出现。这样的阅读仍然会给你一个对家庭作业做出创造性贡献的机会:)

太好了。你介意看一下我的更新吗?我的案例更具体一点?@user2431438
Array.filter(fun x->x.order 2)
因为你似乎在上这门课:你没有问讲师有什么原因吗?因为这些都是愚蠢的问题,我经常会问这些问题——不管怎样,都会为他保留一些有趣的问题。你怎么知道的?你的问题看起来像作业,而且F#课程也不多。此外,您应该能够自己计算lambda。
> [| 0 ; 1 ; 2 ; 3 ; 4 |] |> Array.filter ((<>)2);;
val it : int [] = [|0; 1; 3; 4|]
Array.choose (fun x -> if x.order = 2 then None else Some(x))