Я знаю, что там существуют многомерный массив, но я думаю, что мне не нужно это в моем случае! Я попробовал этот код.. но не мог знать, как инициализировать со списком инициализатора..
дважды [] [] a=new дважды [2] [];//= {{1,2}, {3,4}};
Спасибо
PS: Если Вы задаетесь вопросом, почему я использую его: Мне нужна структура данных, что, когда я называю obj [0], он возвращает массив.. Я знаю, что это странно..
Спасибо
Afaik, самый простой и эффективный с точки зрения нажатия клавиш способ инициализации неровного массива такой:
double[][] x = new []{new[]{1d, 2d}, new[]{3d, 4.3d}};
Edit:
На самом деле это тоже работает:
double[][] x = {new[]{1d, 2d}, new[]{3d, 4.3d}};
Поскольку у вас есть массив массивов, вы также должны создать в нем объекты массива:
double[][] a = new double[][] {
new double[] { 1, 2 },
new double[] { 3, 4 }
};
double[][] a = new double[][] {
new double[] {1.0, 1.0},
new double[] {1.0, 1.0}
};
Это должно сработать:
double[][] a = new double[][]
{
new double[] {1.0d, 2.0d},
new double[] {3.0d, 4.0d}
};
Я не знаю, прав ли я в этом, но я использую так называемые структуры в VB.net и задаюсь вопросом, как эта концепция рассматривается в C#. Это имеет отношение к этому вопросу таким образом:
' The declaration part
Public Structure driveInfo
Public type As String
Public size As Long
End Structure
Public Structure systemInfo
Public cPU As String
Public memory As Long
Public diskDrives() As driveInfo
Public purchaseDate As Date
End Structure
' this is the implementation part
Dim allSystems(100) As systemInfo
ReDim allSystems(1).diskDrives(3)
allSystems(1).diskDrives(0).type = "Floppy"
Посмотрите, насколько все это элегантно и гораздо лучше доступно, чем зубчатые массивы. Как все это можно сделать в C# (может быть, структуры?)