如何将值设置为:KeyValuePair<KeyValuePair<String,String>,int>
How to set the values to: KeyValuePair<KeyValuePair<String,String>,int>
C#
我在我的主 KeyValuePair 中使用 KeyValuePair 作为键。
这是我的问题:
如果我有"KeyValuePair",声明如下:
KeyValuePair<String,String> varName = new KeyValuePair<String,String>("String 1","String 2");
如果我有以下情况,我该如何申报:
KeyValuePair<KeyValuePair<String,String>,int>
我对这里的语法迷路了。请帮帮我!
谢谢!
你几乎已经知道了,但最简单的方法是将它分成两个初始化。
首先,初始化 KeyValuePair<string, string>
,然后使用它和 int
一起初始化 KeyValuePair<KeyValuePair<string, string>, int>
:
var pair = new KeyValuePair<string, string>("string 1", "string 2");
var varName = new KeyValuePair<KeyValuePair<string, string>, int>(pair, 10);
如果你像这样编写一个辅助方法,你可以大大简化这个过程:
public static KeyValuePair<T1, T2> MakeKeyValuePair<T1, T2>(T1 key, T2 value)
{
return new KeyValuePair<T1, T2>(key, value);
}
使用它,您可以执行以下操作:
var pair = MakeKeyValuePair("string 1", "string 2");
var varName = MakeKeyValuePair(pair, 10);
这更容易理解,您不需要明确指定类型。
或者如果你愿意(我个人不喜欢这个):
var varName = MakeKeyValuePair(MakeKeyValuePair("string 1", "string 2"), 10);
但是如果你真的想用艰难的方式做到这一点:
var varName = new KeyValuePair<KeyValuePair<string, string>, int>(
new KeyValuePair<string, string>("string 1", "string 2"),
10);
C# 我在我的主 KeyValuePair 中使用 KeyValuePair 作为键。 这是我的问题:
如果我有"KeyValuePair",声明如下:
KeyValuePair<String,String> varName = new KeyValuePair<String,String>("String 1","String 2");
如果我有以下情况,我该如何申报:
KeyValuePair<KeyValuePair<String,String>,int>
我对这里的语法迷路了。请帮帮我!
谢谢!
你几乎已经知道了,但最简单的方法是将它分成两个初始化。
首先,初始化 KeyValuePair<string, string>
,然后使用它和 int
一起初始化 KeyValuePair<KeyValuePair<string, string>, int>
:
var pair = new KeyValuePair<string, string>("string 1", "string 2");
var varName = new KeyValuePair<KeyValuePair<string, string>, int>(pair, 10);
如果你像这样编写一个辅助方法,你可以大大简化这个过程:
public static KeyValuePair<T1, T2> MakeKeyValuePair<T1, T2>(T1 key, T2 value)
{
return new KeyValuePair<T1, T2>(key, value);
}
使用它,您可以执行以下操作:
var pair = MakeKeyValuePair("string 1", "string 2");
var varName = MakeKeyValuePair(pair, 10);
这更容易理解,您不需要明确指定类型。
或者如果你愿意(我个人不喜欢这个):
var varName = MakeKeyValuePair(MakeKeyValuePair("string 1", "string 2"), 10);
但是如果你真的想用艰难的方式做到这一点:
var varName = new KeyValuePair<KeyValuePair<string, string>, int>(
new KeyValuePair<string, string>("string 1", "string 2"),
10);