我有list<tuple<byte[], int>>
。如何弃置int
并以list
byte[]
结束?
intellisense信息看起来像这样。
Task.Result : (byte[] * int) list
答案 0 :(得分:5)
input |> List.map fst
可以解决问题:
> let input = [ ([| 1uy |], 1); ([| 20uy |], 20) ];;
val input : (byte [] * int) list = [([|1uy|], 1); ([|20uy|], 20)]
> input |> List.map fst;;
val it : byte [] list = [[|1uy|]; [|20uy|]]
它将使用fst
函数映射输入集合中的每个元素,该函数接受元组的第一个元素并丢弃所有其他元素。
答案 1 :(得分:-3)
使用可枚举&#34;选择&#34;扩展方法(https://msdn.microsoft.com/en-us/library/bb548891(v=vs.110).aspx?cs-save-lang=1&cs-lang=fsharp)
示例:
var bytelist = tuplelist.Select(t => t.Item1)
这将返回一个可枚举的byte []&#39; s。如果你真的需要它作为一个列表,请在该语句的末尾添加一个toList()。