c# 如何實現(xiàn)獲取二維數(shù)組的列數(shù)
二維數(shù)組的行數(shù)可以使用Length屬性獲得,但由于C#中支持不規(guī)則數(shù)組,因此二維數(shù)組中每一行中的列數(shù)可能不會相同
如何獲取二維數(shù)組中每一維的列數(shù)呢?
答案還是Length屬性,因為二維數(shù)組的每一維都可以看做一個一維數(shù)組,而一維數(shù)組的長度是可以使用Length屬性獲得。
例如,下面代碼定義一個不規(guī)則二維數(shù)組,并通過遍歷其行數(shù)、列數(shù),輸出二維數(shù)組中的內(nèi)容,
代碼如下:
staticvoid Main(string[] args) { int[][] arr = newint[3][];// 創(chuàng)建二維數(shù)組,指定行數(shù),不指定列數(shù) arr[0] = newint[5];// 第一行分配5個元素 arr[1] = newint[3];// 第二行分配3個元素 arr[2] = newint[4];// 第三行分配4個元素 for(int i=0;i<arr.Length;i++)//遍歷行數(shù) { for(int j = 0; j <arr[i].Length; j++)//遍歷列數(shù) { Console.Write(arr[i][j]);//輸出遍歷到的元素 } Console.WriteLine();//換行輸出 } Console.ReadLine(); }
補充:C#中如何獲取一個二維數(shù)組的兩維長度,即行數(shù)和列數(shù)?以及多維數(shù)組各個維度的長度?
如何獲取二維數(shù)組中的元素個數(shù)呢?
int[,] array = new int[,] {{1,2,3},{4,5,6},{7,8,9}};//定義一個3行3列的二維數(shù)組 int row = array.Rank;//獲取維數(shù),這里指行數(shù) int col = array.GetLength(1);//獲取指定維度中的元素個數(shù),這里也就是列數(shù)了。(0是第一維,1表示的是第二維) int col = array.GetUpperBound(0)+1;//獲取指定維度的索引上限,在加上一個1就是總數(shù),這里表示二維數(shù)組的行數(shù) int num = array.Length;//獲取整個二維數(shù)組的長度,即所有元的個數(shù)
根據(jù)上述我們可以自己驗證多維數(shù)組的形式,使用循環(huán)遍歷操作數(shù)組,例如下面的四維數(shù)組:
int[,,,] arr = new int[9, 8, 7, 6]; arr.Rank;//返回4 arr.GetLength(0);//返回9 arr.GetLength(1);//返回8 arr.GetLength(2);//返回7 arr.GetLength(3);//返回6 arr.GetUpperBound(0)+1;//返回9 arr.Length;//返回3024
剩下的循環(huán)遍歷數(shù)組并操作我就不需要解釋了吧,自己根據(jù)上面的數(shù)子進行操作。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
C#中實現(xiàn)向數(shù)組中動態(tài)添加元素
這篇文章主要介紹了C#中實現(xiàn)向數(shù)組中動態(tài)添加元素方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06分享兩種實現(xiàn)Winform程序的多語言支持的多種解決方案
本篇文章主要介紹了分享兩種實現(xiàn)Winform程序的多語言支持的多種解決方案,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧。2017-02-02