如何使用{}将值加载到字典中
本文关键字:加载 字典 何使用 | 更新日期: 2023-09-27 18:10:45
是否可以使用{}将值加载到Dictionary中?
失败
static Dictionary<byte, byte> dict = new Dictionary<byte, byte>() { new KeyValuePair<byte, byte>(1, 1) };
这不会失败,所以我怀疑在{}中加载有语法
static Dictionary<byte, byte> dic1252expand = new Dictionary<byte, byte>() { };
这是适用于的示例语法
byte[] bytes = new byte[] { 1, 2, 3 };
KeyValuePair<byte, byte> kvp = new KeyValuePair<byte, byte>(1, 1);
如果你给某人一条鱼,他们就有一条鱼;如果你教他们如何捕鱼,你就不需要给他们鱼。张贴的所有答案都是正确的,但没有一个告诉你如何自己找出答案。
C#中的集合初始值设定项语法是一种"语法糖";这只是写一些无聊代码的一种更愉快的方式。当你写:
C c = new C() { p, q, { r, s }, {t, u, v} };
这和你写的一样:
C c;
C temporary = new C();
temporary.Add(p);
temporary.Add(q);
temporary.Add(r, s);
temporary.Add(t, u, v);
c = temporary;
现在应该可以清楚地了解如何在初始值设定项子句中放入什么:查看类型,并查看各种Add方法作为参数的内容。在您的情况下,字典的Add方法接受一个键和一个值,因此初始值设定项应该是{ { k1, v1 }, { k2, v2 } , ... }
有道理吗?
这是有效的:
Dictionary<byte, byte> dict = new Dictionary<byte, byte>() { { 1, 1 }, { 2, 2 } };
Dictionary<string, string> d = new Dictionary<string, string>{{"s", "s"}};
var dict = new Dictionary<int, int>()
{
{ 1, 1 },
{ 2, 1 },
{ 3, 2 }
};
这将设置一个具有三个键值对的字典。
Dictionary<byte, byte> d = new Dictionary<byte, byte>()
{
{ 1, 2 },
{ 3, 4 }
};