在C#中,我有这段代码:
string[] words = { "how", "are", "you" };
string[] words2 = { "HOW", "are", "YOU" };
var result = words.SequenceEqual(words2, StringComparer.OrdinalIgnoreCase);
result
的值为true。
在F#中,我想做同样的事情:
let words = [|"how", "are", "you"|]
let words2 = [|"HOW", "are", "YOU"|]
let result = words.SequenceEqual(words2, StringComparer.OrdinalIgnoreCase)
但编译器抱怨:
类型不兼容
StringComparer
类型与Collections.Generic.IEqualityComparer<string * string * string>
如何在F#中使用StringComparer.OrdinalIgnore
作为我的示例?
答案 0 :(得分:4)
您需要使用;
来分隔数组元素:
let words = [|"how"; "are"; "you"|]
let words2 = [|"HOW"; "are"; "YOU"|]
,
用于分隔元组中的元素,因此您当前有两个包含类型为string * string * string
的3元素元组的1元素数组。