C#从dictionnary的特定值创建一个数组

时间:2017-08-26 16:54:01

标签: c# arrays dictionary

我一直在寻找答案,但由于某些原因,我发现的所有内容都与我的使用不符。 我对c#不是很熟悉,我有一本字典

public Dictionary<int, int> deck = new Dictionary<int, int>();

我想把这个字典的十个第一个值放在像

这样的数组中
public string[] cardP1 = new string[10];

,我尝试了一些东西.Take或.CopyTo,我也玩过值,但它仍然不起作用。

2 个答案:

答案 0 :(得分:1)

你可以很容易地使用LINQ:

var q = (from p in deck.Keys select p).Take(10).ToArray();

如果您想要值,您只需将deck.keys更改为deck.values

即可

它会给你10个第一把钥匙。

编辑或者正如JakubDąbek评论的那样:

var items  = deck.Keys.Take(10).ToArray();

答案 1 :(得分:0)

检查一下:

cardP1 = deck.Take(10).Select(x => string.Format("Card {0}: {1}", x.Key, x.Value) ).ToArray();

或者,如果您想要一些自定义字符串,例如:卡1:4

你可以选择:

{{1}}