有没有办法在C#中具有多个类型的数组,包括其他数组?
显然我可以做到这一点:

object[] x = {1,"G",2.3, 2,'H'};

但不是这个:
object[] x = {1,"G",2.3, 2,'H', {2} };

正确的做法是什么?

最佳答案

问题是您不能以这种方式初始化内部数组。数组初始化器只能在变量或字段初始化器中使用。如您的错误所述:



您必须显式初始化嵌套数组。这样做,它的工作原理是:

object[] x = { 1, "G", 2.3, 2, 'H', new int[]{ 2 } };
// Or a bit cleaner
object[] x = { 1, "G", 2.3, 2, 'H', new []{ 2 } };

阅读更多关于Array Initializers的信息

如果您要定义二维数组,则语法会起作用:
object[,] x = { {"3"}, { 1 }, { 2 } };

关于c# - 多个C#类型的数组(包括其他数组),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45710464/

10-11 02:19
查看更多