有没有办法在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/