溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

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

發(fā)布時(shí)間:2023-04-19 11:49:12 來源:億速云 閱讀:225 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容主要講解“C#中的矩形數(shù)組和鋸齒數(shù)組怎么實(shí)現(xiàn)”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“C#中的矩形數(shù)組和鋸齒數(shù)組怎么實(shí)現(xiàn)”吧!

(一)矩形數(shù)組

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

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

<baseType>[,] <name>;

例如,聲明和初始化一個(gè)二維數(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}};

當(dāng)然,我們還可以這樣對(duì)doubleArray進(jìn)行定義和初始化:

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

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

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

Console.WriteLine(doubleArray[1,2]);//控制臺(tái)輸出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ù)組需要更多的逗號(hào)隔開,聲明格式:

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

(二)鋸齒數(shù)組

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

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

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

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

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

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

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

還可以改進(jìn)鋸齒數(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ù)組中每一個(gè)行的元素(一維數(shù)組)
    {
        Console.Write(jaggedArray[i][j]+"\t");//打印jaggedArray[i][j]
    }
    Console.WriteLine();//輸出完一行換行
}

(2)foreach遍歷

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

到此,相信大家對(duì)“C#中的矩形數(shù)組和鋸齒數(shù)組怎么實(shí)現(xiàn)”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI