国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > C# > 正文

C# 數(shù)組實(shí)例介紹(圖文)

2020-01-24 02:27:49
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

數(shù)組即是一組相同類(lèi)型組合在一起,使用一個(gè)通用的名稱(chēng),通過(guò)分配的下標(biāo)訪問(wèn)的數(shù)據(jù)集合中的元素。

數(shù)組是具有相同類(lèi)型的一組數(shù)據(jù)。當(dāng)訪問(wèn)數(shù)組中的數(shù)據(jù)時(shí),可以通過(guò)下標(biāo)來(lái)指明。c#中數(shù)組元素可以為任何數(shù)據(jù)類(lèi)型,數(shù)組下標(biāo)從0開(kāi)始,即第一個(gè)元素對(duì)應(yīng)的下標(biāo)為0,以后逐個(gè)遞增。數(shù)組可以一維也可多維。

一維數(shù)組是最基本的數(shù)組類(lèi)型,其聲明方法如下:

數(shù)據(jù)類(lèi)型 [ ] 數(shù)組名 ;

舉例:
int [ ] anArray ; // 聲明一個(gè)整型的一維數(shù)組

具有兩個(gè)維度的數(shù)組是二維數(shù)組,其聲明方法如下:
數(shù)據(jù)類(lèi)型 [ , ] 數(shù)組名 ;
舉例:

int [ , ] anArray ; // 聲明一個(gè)整型的二維數(shù)組
float [ , ]anArrayOfFloats; // 聲明一個(gè)浮點(diǎn)型的二維數(shù)組
string [ , ] anArrayOfStrings; // 聲明一個(gè)字符串型的二維數(shù)組

聲明數(shù)組變量時(shí),還沒(méi)有創(chuàng)建數(shù)組,還沒(méi)有為數(shù)組中元素分配任何內(nèi)存空間,因此,聲明數(shù)組后,需要對(duì)數(shù)組實(shí)例化:

anArray = new int [2,4] ;
anArrayOfStrings = new stirng [2,4] ;

我們也可以用給定的值對(duì)數(shù)組元素進(jìn)行初始化。

int [, ] anArray = new int [2, 4] {{1,2,3,4},{5,6,7,8}};
string [, ] anArrayOfStrings = new string [2, 2] {{"某甲","某乙"}, {"冠軍" ,"亞軍" }};

也可使用下列快捷方式:

int [, ] anArray = {{0,1,2,3},{1,2,3,4}};
string [, ] anArrayOfStrings = {{"某甲","某乙"}, {"冠軍" ,"亞軍" }};

在C#語(yǔ)言中,數(shù)組為我們提供了一些有用的特性,利用這些特性,我們可以完成一些更高級(jí)的功能。
數(shù)組名.Length :返回一個(gè)整數(shù),該整數(shù)表示該數(shù)組的所有維數(shù)中元素的總數(shù)。
數(shù)組名.Rank :返回一個(gè)整數(shù),該整數(shù)表示該數(shù)組的維數(shù)。
數(shù)組名.GetLength(int dimension) :返回一個(gè)整數(shù),該整數(shù)表示該數(shù)組的指定維(由參數(shù)dimension指定,維度從零開(kāi)始)中的元素個(gè)數(shù)。

4.foreach語(yǔ)句針對(duì)數(shù)組或集合中的每一個(gè)元素,循環(huán)運(yùn)行嵌入語(yǔ)句。
foreach語(yǔ)句的語(yǔ)法格式為:
foreach (數(shù)據(jù)類(lèi)型 標(biāo)識(shí)符 in 表達(dá)式)
嵌入語(yǔ)句

//包含6個(gè)元素的一維整數(shù)數(shù)組;
int[] mf1=new int[6]; //注意初始化數(shù)組的范圍,或者指定初值;

//包含6個(gè)元素的一維整數(shù)數(shù)組,初值1,2,3,4,5,6
int[] mf2=new int[6]{1,2,3,4,5,6};
 
//一維字符串?dāng)?shù)組,如果提供了初始值設(shè)定項(xiàng),則還可以省略 new 運(yùn)算符
string[] mf3={"c","c++","c#"};

//一維對(duì)象數(shù)組
Object[] mf4 = new Object[5] { 26, 27, 28, 29, 30 };
 
//二維整數(shù)數(shù)組,初值mf5[0,0]=1,mf5[0,1]=2,mf5[1,0]=3,mf5[1,1]=4
int[,] mf5=new int[,]{{1,2},{3,4}};
 
//6*6的二維整型數(shù)組
int[,] mf6=new mf[6,6];

下面來(lái)看一個(gè)一維字符串?dāng)?shù)組的遍歷

using System; public class MikeCat { static void PrintArray(string[] arr) { //打印數(shù)組元素,arr.Length 表示數(shù)組元素的個(gè)數(shù) for(int i=0;i<arr.Length;i++) { Console.WriteLine("arr[{0}]={1}",i,arr[i]); } } public static void Main() { string[] arr={"c","c++","c#"}; //將數(shù)組作為一個(gè)參數(shù)傳遞 PrintArray(arr); } } 

程序結(jié)果:arr[0]=c arr[1]=c++ arr[2]=c#

下面來(lái)看一個(gè)4行2列(4*2)的整型數(shù)組的遍歷:

using System; public class MikeCat { static void PrintArray(int[,] arr) { //通過(guò)兩次FOR循環(huán)遍歷二維數(shù)組 for(int i=0;i<4;i++)//初始化i作為循環(huán)變量,i++實(shí)現(xiàn)該變量的自增運(yùn)算。 //for循環(huán)滿(mǎn)足條件后執(zhí)行完循環(huán)體一次后執(zhí)行i++,然后進(jìn)入下次循環(huán)。簡(jiǎn)單的c語(yǔ)法,這里做簡(jiǎn)單介紹供初學(xué)者學(xué)習(xí)。(詳細(xì)可參閱《c# 高級(jí)編程4.0》一書(shū)) { for(int j=0;j<2;j++) { Console.WriteLine("arr[{0},{1}]={2}",i,j,arr[i,j]);//打印每個(gè)二維數(shù)組元素 } } } public static void Main() { //主函數(shù) //將數(shù)組作為一個(gè)參數(shù)傳遞 PrintArray(new int[,]{{1,2},{3,4},{5,6},{7,8}}; } } 


運(yùn)行結(jié)果:arr[0,0]=1 arr[0,1]=2 arr[1,0]=3 arr[1,1]=4 arr[2,0]=5 arr[2,1]=6 arr[3,0]=7 arr[3,1]=8

數(shù)組的屬性:

•數(shù)組可以是一維、多維或交錯(cuò)的。
•數(shù)值數(shù)組元素的默認(rèn)值設(shè)置為零,而引用元素的默認(rèn)值設(shè)置為 null。
•交錯(cuò)數(shù)組是數(shù)組的數(shù)組,因此,它的元素是引用類(lèi)型,初始化為 null。
•數(shù)組的索引從零開(kāi)始:具有 n 個(gè)元素的數(shù)組的索引是從 0 到 n-1。
•數(shù)組元素可以是任何類(lèi)型,包括數(shù)組類(lèi)型。
•數(shù)組類(lèi)型是從抽象基類(lèi)型 Array 派生的引用類(lèi)型。由于此類(lèi)型實(shí)現(xiàn)了 IEnumerable 和 IEnumerable,因此可以對(duì) C# 中的所有數(shù)組使用 foreach 迭代。
我對(duì)數(shù)組的理解:在 C# 中,數(shù)組實(shí)際上是對(duì)象,而不只是像 C 和 C++ 中那樣的可尋址連續(xù)內(nèi)存區(qū)域

一維數(shù)組 :一維數(shù)組以線(xiàn)性方式存儲(chǔ)固定數(shù)目的項(xiàng),只需一個(gè)索引值即可標(biāo)識(shí)任意一個(gè)項(xiàng)。
一維數(shù)組實(shí)例:

static class Program   {               static void Main()     {       //一維數(shù)組       int[] arry = new int[9] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };       arry[0] = 2;//第一行為2       Console.WriteLine(arry);   } }

運(yùn)行結(jié)果截圖


二維數(shù)組實(shí)例

//二維數(shù)組        int[,] arry2 = new int[2, 3] { { 1, 2, 3 }, { 4, 5, 6 } };       arry2[1, 0] = 5;//改變第二列的第一行為5        for (int i = 0; i < arry2.GetLength(1); i++)       {         for (int y = 0; y < arry2.GetLength(1); y++)//第一個(gè)for循環(huán)遍歷二維數(shù)組的列,第二個(gè)for循環(huán)遍歷二維數(shù)組的行         {           Console.Write(arry2[i, y]);         }       }

運(yùn)行結(jié)果截圖


交錯(cuò)數(shù)組實(shí)例

//交錯(cuò)數(shù)組      int[][] arry3 = new int[3][];//交錯(cuò)數(shù)組必須指定下標(biāo)的個(gè)數(shù)       arry3[0] = new int[] { 0, 1, 2, 4 };      arry3[1] = new int[] { 3, 4, 5, 6 };      arry3[2] = new int[] { 4, 8, 9 };      for (int x = 0; x < arry3.Length; x++)      {        for (int z = 0; z < arry3[x].Length; z++)        {          Console.Write(arry3[x][z]);        }        Console.WriteLine();//以inti的數(shù)組元素為準(zhǔn)進(jìn)行換行.      }

運(yùn)行結(jié)果截圖


C# 還提供 foreach 語(yǔ)句。該語(yǔ)句提供一種簡(jiǎn)單、明了的方法來(lái)循環(huán)訪問(wèn)數(shù)組的元素,看下面實(shí)例。

  static void Main()     { int [] arry4=new int[100];        foreach (int a in arry)       {         Console.Write(arry);       } }

運(yùn)行結(jié)果截圖



源代碼下載地址:ArrayModel(VeVB.COm).rar

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 柏乡县| 泾源县| 广昌县| 砚山县| 龙南县| 江永县| 穆棱市| 电白县| 宜昌市| 普兰店市| 垣曲县| 凤山县| 焉耆| 浦城县| 治多县| 石渠县| 太白县| 凤山县| 左权县| 富顺县| 南通市| 察雅县| 桓台县| 关岭| 含山县| 晋城| 遂平县| 雷波县| 县级市| 克东县| 泗水县| 吉安市| 定南县| 本溪市| 阳城县| 贵阳市| 和田市| 邢台市| 福清市| 彝良县| 万荣县|