0

我想知道是否可以创建不同类型的二维List。换句话说,我想知道这样的事情是否可能:

List<T, U> list = new List<T, U>();

whereTU是任意两种不同的类型。

不诉诸structs 或classes 是否可以做到这一点?

4

4 回答 4

4

在我看来,您正在寻找的是Dictionary<T,V>

var dictionary = new Dictionary<int, string>();
dictionary[3] = "three";
dictionary[7] = "seven";
foreach(var keyValuePair in dictionary)
{
    Console.WriteLine("{0}: {1}", keyValuePair.Key, keyValuePair.Value);
}
// 3: three
// 7: seven
于 2013-07-05T23:03:02.467 回答
3

你可以使用一个Dictionary<T, U>

var list = new Dictionary<T, U>();

您想要的位置和T类型。U

于 2013-07-05T23:04:38.837 回答
3

你可以做这样的事情,但我不确定这是否是你需要的:

List<Tuple<int, string>> list = new List<Tuple<int, string>>();
list.Add(Tuple.Create<int, string>(2, "two"));
于 2013-07-05T22:59:40.100 回答
0

第一种方法:继承。但是您可以继续创建一个List<Object>. 对象不在乎你扔在那里的东西。但是将其限制为两个类,不,这是不可能的。

于 2013-07-05T22:59:34.393 回答