這不是一個3維陣列。這只是一個數組的數組。 我真的不知道你盡力去做。
無論如何,如果我有ü權ü想要做這樣的事情:
好了,如果你需要這個您的例子,那麼我會建議你一個struct
爲了做到這一點更輕鬆。 如果你想了解多維數組,那麼你應該蘆葦如下:
你定義了「多維數組」是這樣的:
double[][][] array;
這不是一個「多維數組」。這是一個數組數組(數組)的數組(列表)。
真正的「多維陣列」被定義該(3名維):
double[,,] array;
這是一個差:d
如果u使用「真正多維數組」則u可以做上述像這個;
private static void Main(string[] args)
{
var raw = new double[,,]
{
{
{1, 2},
{3, 4}
},
{
{5, 6},
{7, 8}
}
};
Console.WriteLine(raw[0, 0, 0]); //1
Console.WriteLine(raw[1, 1, 0]); //7
Console.ReadKey();
}
而且這將是一個數組
var raw = new double[][][]
{
new double[][]
{
new double[]
{
1,
3
},
new double[]
{
2,
4
}
},
new double[][]
{
new double[]
{
5,
7
},
new double[]
{
6,
8
}
}
};
Console.WriteLine(raw[0][0][0]); //1
Console.WriteLine(raw[1][1][0]); //6
Console.ReadKey();
數組的數組中的情況下,代碼(如果你不希望使用struct
)比這個數組將是更好的方法!
用於你的情況結構是這樣的:
private static void Main(string[] args)
{
var raw = new SampleDataStruct[2]
{
new SampleDataStruct
{
CityName = "New York", AgeWeight = new AgeWeightStruct[3]
{
new AgeWeightStruct{Age = 50,Weigth = 70},
new AgeWeightStruct{Age = 40,Weigth = 75},
new AgeWeightStruct{Age = 30,Weigth = 65}
}
},
new SampleDataStruct
{
CityName = "Berlin", AgeWeight = new AgeWeightStruct[3]
{
new AgeWeightStruct{Age = 50,Weigth = 65},
new AgeWeightStruct{Age = 40,Weigth = 60},
new AgeWeightStruct{Age = 30,Weigth = 55}
}
}
};
Console.WriteLine(raw.Where(st => st.CityName == "Berlin").ElementAtOrDefault(0).AgeWeight.Where(aw => aw.Age == 40).ElementAtOrDefault(0).Weigth); //Berlin -> Age = 40 -> Display Weight (60)
Console.WriteLine(raw.Where(st => st.CityName == "New York").ElementAtOrDefault(0).AgeWeight.Where(aw => aw.Age == 30).ElementAtOrDefault(0).Weigth); //New York -> Age = 30 -> Display Weight (65)
Console.ReadKey();
}
}
public struct SampleDataStruct
{
public string CityName;
public AgeWeightStruct[] AgeWeight;
}
public struct AgeWeightStruct
{
public int Age;
public int Weigth;
}
在左邊,W是一個double [] [] [],而右邊要創建一個double [] []那並不不匹配。如果每個維度具有相同的長度,則多維數組可能會更方便:double [,,]或double [,] –
對不起,我的問題不清楚。我知道這個語法不會直接在C#中工作。有沒有辦法同時分配鋸齒陣列的三個維度中的兩個。想象一下W [] [] []的第一維是與城市相關的數字;第二,每個居住在那裏的人的年齡,第三,他們的體重。現在讓我們有一部分代碼創建一個包含年齡和權重值的「calculate [] []」數組。我想將此數組的內容分配給W [1] [] []。這是我沒有實現的 – Doombot