C# 中列表的二维数组

本文关键字:二维数组 列表 | 更新日期: 2023-09-27 18:30:27

我只想在 c# 中获取 List 的 2 维数组。在我看来,下面应该有效,但它没有,列表的一维数组有效。我将Unity3D与Mono一起使用,但我认为这是与语言相关的问题。

List<MyType>[,] twoDArrayofList;//don't work, it's type is List<MyType>
List<MyType>[] oneDArrayofList;//it's works, the type is List<MyType>

有人知道出了什么问题吗?谢谢。

C# 中列表的二维数组

"不起作用"是什么意思?你得到什么错误?

我不知道Mono(或Unity3D),但我只是在.NET项目中尝试了以下内容,并得到了我期望的结果:

List<string>[,] strings = new List<string>[2, 2];
strings[0, 0] = new List<string> { "One" };
strings[0, 1] = new List<string> { "Two" };
strings[1, 0] = new List<string> { "Three" };
strings[1, 1] = new List<string> { "Four" };

这是一个较旧的帖子,但它出现在我寻找类似答案的过程中。我发现创建字典而不是列表可以满足我的需求。您不能按索引迭代,但是如果您有一个离散列表并且正在迭代第一个字符串"Key",则可以轻松获取第二个字符串"Value"。

这是一个带有示例的堆栈溢出帖子:在 C# 中迭代字典的最佳方法是什么?