C 陣列集合

2022-04-29 12:51:14 字數 3095 閱讀 9307

一、陣列

1、變數是程式執行是在記憶體中儲存發生變化的容器;

2、變數可以儲存單個資料,而陣列可以儲存多個變數,並且互不影響,和諧共處;

3、陣列的特點:長度固定、型別相同;

4、陣列用於儲存長度固定,型別相同變數的容器

二、陣列的分類:

一維陣列、二維陣列、多維陣列、不規則陣列

三、陣列的應用:

建立、賦值、應用

四、宣告陣列:    

//

定義乙個已知長度的一維陣列

int arr = new

int[100];

//

定義乙個未知長度,直接賦值的陣列

string name1 = new

string

五、c#多維陣列

1、c#支援多維陣列。多維陣列又稱為矩陣陣列。

2、宣告乙個string變數的二維陣列   

string [,] names;
3、宣告乙個int變數的三維陣列:  

int [ , , ] m;
4、二維陣列

多維陣列最簡單的形式就是二維陣列。乙個二維陣列,在本質上,是乙個一維陣列的列表。乙個二維陣列可以被認為是乙個帶有x

行和y列的**。下面是乙個二維陣列,包含3行4列:

column0   column1  column2  column3

a[0][0]

a[0][1]

a[0][2]

a[0][3]

a[1][0]

a[1][1]

a[1][2]

a[1][3]

a[2][0]

a[2][1]

a[2][2]

a[2][3]

因此,陣列中的每個元素是使用形式為a[i][j]的元素名稱來標識的,其中a是陣列的名稱,i和j是唯一標識a中每個元素的下標。

5、初始化二維陣列

多維陣列可以通過在括號內為每行指定值來進行初始化。下面是乙個帶有3行4列的陣列:

int [,] a = new

int [3,4

], /*

初始化索引號為0的行

*/, /*

初始化索引號為1的行

*/}; /*

初始化索引號為2的行

*/

6、訪問二維陣列元素

二位陣列中的元素是通過使用下標(即陣列的行索引和列索引)來訪問。例如:

int val = a[2,3];

上面的語句將獲取陣列中第三行第四個元素。

下面是使用迴圈來處理二維陣列:

using

system;

namespace

,,,,};

int i,j; //

定義兩個迴圈變數

/*輸出陣列中每個元素的值

*/for(i=0;i<5;i++)

,] =

",i,j,a[i,j]);}}

console.readkey();

}}

}

7、c#交錯陣列

交錯陣列是陣列的陣列。你可以宣告乙個帶有int值得交錯陣列 scores,如下所示:

int scores;

宣告乙個陣列不會在記憶體中建立陣列。建立上面得陣列:

int scores = new int[5];

for(int i =0; i < scores.length; i++)

scores[i] = new int[i+2];

你可以初始化乙個交錯陣列,如下所示:

int scores = new int[2],new int };\

其中,scores是乙個由兩個整形陣列組成得陣列——scores[0]是乙個帶有3個整數得陣列,scores[1]是乙個帶有4個正數得陣列

8、c#array類

array類是c#中所有得陣列得基類,它是在system命名空間中定義。

array類提供了各種用於陣列得屬性和方法。

ayyay類的屬性:

isfixedsize:獲取乙個值。該值指示陣列是否帶有固定大小。

isreadonly:獲取乙個值,該值指示陣列是否唯讀;

length:獲取乙個32位整數,該值表示所有維度的陣列中的元素總數;

longlength:獲取乙個64位整數,該值表示所有維度的陣列中的元素整數;

rank:獲取陣列的秩(維度);

array類的方法:

clear:根據元素的型別,設定陣列中某個範圍的元素為0、為false或者為null;

copy(array,array,int32):從陣列的第乙個元素開始複製某個範圍的元素到另乙個陣列的第乙個元素位置。

長度由乙個32位整數指定;

copyto(array,int32):從當前的一維陣列中複製所有的元素到乙個指定的一維陣列的指定索引位置。索引由

乙個32位整數指定;

getlength:獲取乙個32位整數,該值表示指定維度的陣列中的元素整數;

getlonglength:獲取乙個64位整數,該值表示指定維度的陣列中的元素總數;

getlowerbound:獲取陣列中指定維度的下界;

gettype:獲取當前例項的型別。從物件(object)繼承;

getupperbound:獲取陣列中指定維度的上界;

getvalue(int32): 獲取一維陣列中指定位置的值。索引由乙個32位整數指定;

indexof(array,object): 搜尋指定的物件,返回整個一維陣列中第一次出現的索引;

reverse(array): 逆轉整個一維陣列中元素的順序;

setvalue(object,int32):給一維陣列中指定位置的元素設定值。索引由乙個32位整數指定。

sort(array):使用陣列的每個元素的icomoarable實現來排序整個一維陣列中的元素;

tostring:返回乙個表示當前物件的字串。從物件(object)繼承

array類的方法的用法:

C 陣列和集合

c 在儲存資料的時候,是需要先宣告乙個陣列的,當然還可以使用集合。那麼陣列與集合有什麼區別,為什麼有了陣列還需要集合呢?定義 陣列是相同資料型別的元素按一定順序排列的集合。優點 陣列在儲存資料的時候是連續儲存的,因此可以快速而容易地從頭到尾遍歷元素,可以快速的修改元素等等。缺點 在宣告陣列的時候必須...

c 集合 陣列

集合的概念 集合原本是數學上的乙個概念,表示一組具有某種性質的數學元素,引用到程式設計中表示一組具有相同性質的物件。集合好比容器,將一系列相似的組合一起,是乙個特殊的類,和陣列一樣,可以通過索引訪問集合成員,也可以通過 鍵 來訪問,與傳統陣列不同的是,集合的大小可以動態調整,可以在執行時新增或刪除元...

C 學習 集合和陣列

陣列和集合在某種意義上講很相似,都是可以對於大量資料進行處理。從例子感受一下集合和陣列的功能。public static void sumarray 定義5個數。int sum 0 初始為0 for int i 0 i numbers.length i 迴圈實現每個數之間的加和 console.wr...