我正在尝试为基于控制台的游戏创建世界地图。
在World类中,我有字符串数组,可以使用级别打印方法进行打印。
public static string[] A1 = new string[]
{
(" level data"),
(" level data"),
};
如果我这样做,它就有效
Render.DrawLevel(World.A1);
Render.DrawLevel需要以下参数:
(string[] _level)
然而,在世界级别中,我希望创建一个能够容纳所有地图的字符串数组的二维数组。
我尝试过:
public static string[,][] Map = new string[,][]
{
{ A1 , A2 },
{ B1 , B2 },
};
但是如果我尝试使用以下代码:
World.Map[0,0]
当我打印级别参数时,出现了错误,它显示为 NULL,而不是字符串数组 A1。
我应该如何创建一个二维数组,并正确引用其中的 string[] 参数?
非常感谢。
Fin。
编辑:代码被错误地复制为 'static void' 而不仅仅是 'static'。
null
。想象一下当你创建一个字符串数组时会发生什么; 数组的元素将是null
,直到你给它们赋值,那么在你的情况下也基本相同。你需要初始化Map[,]
的每个元素,因为它们不会自动引用空数组,正如你所期望的那样。 - InBetween