a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C# > 正文

c#數組詳解

2020-01-24 03:48:41
字體:
來源:轉載
供稿:網友

數組是一種數據結構,其聲明方式如下:

type[] arrayName;

數組具有以下屬性:

    1.數組可以是一維、多維或交錯的。
    2.數值數組元素的默認值設置為零,而引用元素的默認值設置為 null。
    3.交錯數組是數組的數組,因此,它的元素是引用類型,初始化為 null。
    4.數組的索引從零開始:具有 n 個元素的數組的索引是從 0 到 n-1。
    5.數組元素可以是任何類型,包括數組類型。

一維數組

 

//聲明一維數組,沒有初始化,等于null   int[] intArray1;   //初始化已聲明的一維數組   intArray1 = new int[3]; //數組元素的默認值為0   intArray1 = new int[3]{1,2,3};   intArray1 = new int[]{1,2,3};     //聲明一維數組,同時初始化   int[] intArray2 = new int[3]{1,2,3};   int[] intArray3 = new int[]{4,3,2,1};   int[] intArray4 = {1,2,3,4};   string[] strArray1 = new string[]{"One","Two","Three"};   string[] strArray2 = {"This","is","an","string","Array"}; 

多維數組  

 //聲明二維數組,沒有初始化   short[,] sArray1;   //初始化已聲明的二維數組   sArray1 = new short[2,2];   sArray1 = new short[2,2]{{1,1},{2,2}};   sArray1 = new short[,]{{1,2,3},{4,5,6}};     //聲明二維數組,同時初始化   short[,] sArray2 = new short [1,1]{{100}};   short[,] sArray3 = new short [,]{{1,2},{3,4},{5,6}};   short[,] sArray4 = {{1,1,1},{2,2,2}};   //聲明三維數組,同時初始化   byte[,,] bArray1 = {{{1,2},{3,4}},{{5,6},{7,8}}}; 


交錯數組

  

 //聲明交錯數組,沒有初始化   int[][] JagIntArray1;   //初始化已聲明的交錯數組   JagIntArray1 = new int [2][] {       new int[]{1,2},       new int[]{3,4,5,6}      };   JagIntArray1 = new int [][]{        new int[]{1,2},       // new int []{3,4,5},        intArray2 //使用int[]數組變量       };   //聲明交錯數組,同時初始化   int[][] JagIntArray2 = {       new int[]{1,1,1},       //new int []{2,2},       intArray1       }; 

數組即是一組相同類型組合在一起,使用一個通用的名稱,通過分配的下標訪問的數據集合中的元素。

數組是具有相同類型的一組數據。當訪問數組中的數據時,可以通過下標來指明。c#中數組元素可以為任何數據類型,數組下標從0開始,即第一個元素對應的下標為0,以后逐個遞增。數組可以一維也可多維。

一維數組是最基本的數組類型,其聲明方法如下:

數據類型 [ ] 數組名 ;

舉例:
int [ ] anArray ; // 聲明一個整型的一維數組

具有兩個維度的數組是二維數組,其聲明方法如下:
數據類型 [ , ] 數組名 ;
舉例:

int [ , ] anArray ; // 聲明一個整型的二維數組
float [ , ]anArrayOfFloats; // 聲明一個浮點型的二維數組
string [ , ] anArrayOfStrings; // 聲明一個字符串型的二維數組

聲明數組變量時,還沒有創建數組,還沒有為數組中元素分配任何內存空間,因此,聲明數組后,需要對數組實例化:

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

我們也可以用給定的值對數組元素進行初始化。

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#語言中,數組為我們提供了一些有用的特性,利用這些特性,我們可以完成一些更高級的功能。
數組名.Length :返回一個整數,該整數表示該數組的所有維數中元素的總數。
數組名.Rank :返回一個整數,該整數表示該數組的維數。
數組名.GetLength(int dimension) :返回一個整數,該整數表示該數組的指定維(由參數dimension指定,維度從零開始)中的元素個數。

4.foreach語句針對數組或集合中的每一個元素,循環運行嵌入語句。
foreach語句的語法格式為:
foreach (數據類型 標識符 in 表達式)
嵌入語句

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

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

//一維對象數組
Object[] mf4 = new Object[5] { 26, 27, 28, 29, 30 };
 
//二維整數數組,初值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的二維整型數組
int[,] mf6=new mf[6,6];

下面來看一個一維字符串數組的遍歷

using System; public class MikeCat { static void PrintArray(string[] arr) { //打印數組元素,arr.Length 表示數組元素的個數 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#"}; //將數組作為一個參數傳遞 PrintArray(arr); } } 

程序結果:arr[0]=c arr[1]=c++ arr[2]=c#

下面來看一個4行2列(4*2)的整型數組的遍歷:

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


運行結果: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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日韩欧美一区二区视频 | 色欧美视频 | 和尚风流一级艳片 | 99久久精品久久亚洲精品 | 成人在线视频网 | 亚洲色图一区二区三区 | 成人免费视频网站 | 色悠悠久久 | 国产精品人人做人人爽 | 男女靠逼小视频 | 日本在线观看 | 亚洲九九九 | 中文字幕在线播放第一页 | 日本精品中文字幕 | 免费在线观看av | 国产精品一区二区三区在线看 | 五月婷婷综合久久 | 青青久久av北条麻妃海外网 | 99精品久久久久久 | 日韩欧美一区二区三区免费观看 | 国产精品国产精品国产 | 欧美一级在线 | 伊人av超碰久久久麻豆 | 综合一区二区三区 | a在线v | 精品视频在线免费观看 | 国产69精品久久久久观看黑料 | 亚洲精品入口a级 | 国产精品久久久久久 | 欧美午夜一区二区福利视频 | www嫩草| 国产精品粉嫩白浆在线观看 | 免费福利片2020潦草影视午夜 | 国产一区二区三区免费 | 欧美aⅴ | 日韩视频免费 | 日韩网站免费观看 | 成人日韩 | 国产精品美女视频 | 中文在线视频 | 日本不卡一区二区三区在线观看 |