我有一个C#示例,它将从整数数组中创建一个奇数和偶数数字的字典:
int[] values = new int[]
{
1,
2,
3,
5,
7
};
Dictionary<int, string> dictionary =
values.ToDictionary(key => key, val => (val % 2 == 1) ? "Odd" : "Even");
// Display all keys and values.
foreach (KeyValuePair<int, string> pair in dictionary)
{
Console.WriteLine(pair);
}
输出结果为:
[1, Odd]
[2, Even]
[3, Odd]
[5, Odd]
[7, Odd]
我希望使用ToDictionary在F#中实现类似的功能,目前已经有了以下代码:
let values = [| 1; 2; 3; 5; 7 |]
let dictionary = values.ToDictionary( ??? )
// Display all keys and values.
for d in dictionary do
printfn "%d %s" d.Key d.Value
但是我应该如何在ToDictionary内部编写逻辑呢?