欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#中的矩形數(shù)組(多維數(shù)組)和鋸齒數(shù)組的實現(xiàn)

 更新時間:2023年04月11日 08:27:37   作者:斗樂八神  
本文主要介紹了C#中的矩形數(shù)組(多維數(shù)組)和鋸齒數(shù)組的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

(一)矩形數(shù)組

在C#中,矩形數(shù)組(rectangular array),又稱多維數(shù)組,是使用多個索引訪問其元素的數(shù)組。

1. 二維數(shù)組的聲明:

<baseType>[,] <name>;

例如,聲明和初始化一個二維數(shù)組doubleArray,其基本類型是double,3行4列:

double[,] doubleArray=new double[3,4];
double[,] doubleArray={{1,2,3,4},{5,6,7,8},{9,10,11,12}};

當然,我們還可以這樣對doubleArray進行定義和初始化:

double[,] doubleArray=new double[3,4]{{1,2,3,4},{5,6,7,8},{9,10,11,12}};

2. 根據(jù)索引訪問數(shù)組中的元素

訪問數(shù)組中行號為1,列號為2(第2行,第3列)的數(shù)組元素:

Console.WriteLine(doubleArray[1,2]);//控制臺輸出7

3. 遍歷二維數(shù)組

(1)獲取多維數(shù)組的維度

int rank=doubleArray.Rank;//rank=2,表示doubleArray數(shù)組的維度為2

(2)for循環(huán)遍歷

//for循環(huán)遍歷doubleArray數(shù)組
for(int i=0;i<doubleArray.GetLength(0);i++)//GetLength(0)獲取數(shù)組行數(shù)
{
    for(int j=0;j<doubleArray.GetLength(1);j++)//GetLength(1)獲取數(shù)組列數(shù)
    {
        Console.Write(doubleArray[i,j]+"\t");//打印索引為[i,j]的數(shù)組元素
    }
    Console.WriteLine();//打印完一行換行
}

(3)foreach遍歷

//foreach遍歷doubleArray數(shù)組
foreach(double item in doubleArray)
{
    Console.Write(item + "\t");//依次輸出doubleArray數(shù)組中的元素
}

4. 其他多維數(shù)組

其他多維數(shù)組需要更多的逗號隔開,聲明格式:

<baseType>[,,] <name>;//三維數(shù)組
<baseType>[,,,] <name>;//四維數(shù)組
<baseType>[,,,,] <name>;//五維數(shù)組
...

(二)鋸齒數(shù)組

上述的矩形數(shù)組,它要求數(shù)組每一行的元素個數(shù)相同,但對于鋸齒數(shù)組(jagged array),它可以使數(shù)組中每行的元素個數(shù)不同。
鋸齒數(shù)組又稱為交錯數(shù)組,數(shù)組中的每一個元素都是另一個數(shù)組,所有鋸齒數(shù)組也叫作數(shù)組的數(shù)組,但是要注意,這些數(shù)組都必須要有相同的基本類型。

1. 鋸齒數(shù)組的聲明和初始化

(1)鋸齒數(shù)組聲明

int[][] jaggedArray;//聲明一個int型鋸齒數(shù)組jaggedArray

(2)鋸齒數(shù)組初始化

初始化jaggedArray數(shù)組含有2個子數(shù)組(即數(shù)值中2個元素為另外2個數(shù)組)

jaggedArray = new int[2][];//初始化jaggedArray數(shù)組
jaggedArray[0] = new int[3] { 1, 2, 3 };//第一個元素為一個長度為3的一維數(shù)組
jaggedArray[1] = new int[4] { 4, 5, 6, 7 };//第二個元素為一個長度為4的一維數(shù)組

還可以改進鋸齒數(shù)組的聲明和初始化,將聲明和初始化寫在一行代碼:

int[][] jaggedArray = new int[2][] { new int[] { 1, 2, 3 }, new int[] { 4, 5, 6, 7 } };

2. 遍歷鋸齒數(shù)組

(1)for循環(huán)遍歷

 //for循環(huán)遍歷jaggedArray數(shù)組
for(int i = 0; i < jaggedArray.Length; i++)//遍歷數(shù)組的行數(shù)
{
    for (int j = 0; j < jaggedArray[i].Length; j++)//遍歷數(shù)組中每一個行的元素(一維數(shù)組)
    {
        Console.Write(jaggedArray[i][j]+"\t");//打印jaggedArray[i][j]
    }
    Console.WriteLine();//輸出完一行換行
}

(2)foreach遍歷

//foreach遍歷jaggedArray數(shù)組
foreach(int[] int_item in jaggedArray)//遍歷鋸齒數(shù)中的每個子數(shù)組,類型為int[]
{
    foreach(int item in int_item)//遍歷每個子數(shù)組中的元素,類型為int
    {
        Console.Write(item + "\t");//依次輸出鋸齒數(shù)組中的元素
    }
}

總結

使用鋸齒數(shù)組的語法,不管是數(shù)組的聲明和初始化,還是數(shù)組的遍歷,都要比矩形數(shù)組復雜的多。在大多數(shù)情況下,使用矩形數(shù)組比較簡單,它也是一種比較簡單的存儲方式。但是,有時必須使用鋸齒數(shù)組,且工作效率并不會因此而降低。

到此這篇關于C#中的矩形數(shù)組(多維數(shù)組)和鋸齒數(shù)組的實現(xiàn)的文章就介紹到這了,更多相關C# 矩形數(shù)組和鋸齒數(shù)組內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • C# goto語句的具體使用

    C# goto語句的具體使用

    # goto 語句用于直接在一個程序中轉到程序中的標簽指定的位置,標簽實際上由標識符加上冒號構成。本文主要介紹了C# goto語句的具體使用,感興趣的可以了解一下
    2021-06-06
  • WinForm項目開發(fā)中WebBrowser用法實例匯總

    WinForm項目開發(fā)中WebBrowser用法實例匯總

    這篇文章主要介紹了WinForm項目開發(fā)中WebBrowser用法,需要的朋友可以參考下
    2014-08-08
  • 關于C#.net winform程序驗證moss的集成身份認證實例

    關于C#.net winform程序驗證moss的集成身份認證實例

    因為網(wǎng)站使用的是windows集成認證,所以遇到了權限問題,需要輸入密碼。使操作和用戶體驗非常不方便,研究了好久沒有找到好的方法,最后終于讓我踏破鐵鞋總結出了下面的方法
    2013-03-03
  • c# winform讀取xml文件創(chuàng)建菜單的代碼

    c# winform讀取xml文件創(chuàng)建菜單的代碼

    動態(tài)創(chuàng)建菜單使得程序靈活性大大增加,本文根據(jù)讀取xml文件中的配置菜單項來動態(tài)創(chuàng)建菜單,代碼如下
    2013-09-09
  • 簡單的觀察者模式示例分享

    簡單的觀察者模式示例分享

    這篇文章主要介紹了簡單的觀察者模式示例,抽象層定義了觀察者模式,實現(xiàn)層是對抽象層的具體實現(xiàn),需要的朋友可以參考下
    2014-03-03
  • C#線程池操作方法

    C#線程池操作方法

    這篇文章主要介紹了C#線程池操作方法,實例分析了C#中線程池的相關使用技巧,需要的朋友可以參考下
    2015-04-04
  • 淺談C# 序列化與反序列化幾種格式的轉換

    淺談C# 序列化與反序列化幾種格式的轉換

    下面小編就為大家?guī)硪黄獪\談C# 序列化與反序列化幾種格式的轉換。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08
  • 理解C#編程中的靜態(tài)類和靜態(tài)成員以及密封類

    理解C#編程中的靜態(tài)類和靜態(tài)成員以及密封類

    這篇文章主要介紹了理解C#編程中的靜態(tài)類和靜態(tài)成員以及密封類,注意類成員的相關訪問限制和類的繼承問題,需要的朋友可以參考下
    2016-01-01
  • C#實現(xiàn)圖片上傳與瀏覽切換的方法

    C#實現(xiàn)圖片上傳與瀏覽切換的方法

    這篇文章主要介紹了C#實現(xiàn)圖片上傳與瀏覽切換的方法,是很有實用價值的一個應用技巧,需要的朋友可以參考下
    2014-08-08
  • C#泛型的使用及示例詳解

    C#泛型的使用及示例詳解

    這篇文章主要介紹了C#泛型的使用及示例,本文通過例子個大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08

最新評論