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

首頁 > 編程 > C# > 正文

詳解C#編程中一維數(shù)組與多維數(shù)組的使用

2020-01-24 01:19:04
字體:
供稿:網(wǎng)友

一維數(shù)組
可按下面的示例所示聲明五個(gè)整數(shù)的一維數(shù)組。

int[] array = new int[5];

此數(shù)組包含從 array[0] 到 array[4] 的元素。 new 運(yùn)算符用于創(chuàng)建數(shù)組并將數(shù)組元素初始化為它們的默認(rèn)值。在此例中,所有數(shù)組元素都初始化為零。
可以用相同的方式聲明存儲(chǔ)字符串元素的數(shù)組。例如:

string[] stringArray = new string[6];

數(shù)組初始化
可以在聲明數(shù)組時(shí)將其初始化,在這種情況下不需要級別說明符,因?yàn)榧墑e說明符已經(jīng)由初始化列表中的元素?cái)?shù)提供。例如:

int[] array1 = new int[] { 1, 3, 5, 7, 9 };

可以用相同的方式初始化字符串?dāng)?shù)組。下面聲明一個(gè)字符串?dāng)?shù)組,其中每個(gè)數(shù)組元素用每天的名稱初始化:

string[] weekDays = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };

如果在聲明數(shù)組時(shí)將其初始化,則可以使用下列快捷方式:

int[] array2 = { 1, 3, 5, 7, 9 };string[] weekDays2 = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };

可以聲明一個(gè)數(shù)組變量但不將其初始化,但在將數(shù)組分配給此變量時(shí)必須使用 new 運(yùn)算符。例如:

int[] array3;array3 = new int[] { 1, 3, 5, 7, 9 }; // OK//array3 = {1, 3, 5, 7, 9}; // Error

值類型數(shù)組和引用類型數(shù)組
請看下列數(shù)組聲明:

SomeType[] array4 = new SomeType[10];

該語句的結(jié)果取決于 SomeType 是值類型還是引用類型。如果為值類型,則語句將創(chuàng)建一個(gè)有 10 個(gè)元素的數(shù)組,每個(gè)元素都有 SomeType 類型。如果 SomeType 是引用類型,則該語句將創(chuàng)建一個(gè)由 10 個(gè)元素組成的數(shù)組,其中每個(gè)元素都初始化為空引用。


多維數(shù)組
數(shù)組可以具有多個(gè)維度。例如,下列聲明創(chuàng)建一個(gè)四行兩列的二維數(shù)組。

int[,] array = new int[4, 2];

下列聲明創(chuàng)建一個(gè)三維(4、2 和 3)數(shù)組。

int[, ,] array1 = new int[4, 2, 3];

數(shù)組初始化
可以在聲明數(shù)組時(shí)將其初始化,如下例所示。

// Two-dimensional array.int[,] array2D = new int[,] { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } };// The same array with dimensions specified.int[,] array2Da = new int[4, 2] { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } };// A similar array with string elements.string[,] array2Db = new string[3, 2] { { "one", "two" }, { "three", "four" },          { "five", "six" } };// Three-dimensional array.int[, ,] array3D = new int[,,] { { { 1, 2, 3 }, { 4, 5, 6 } },          { { 7, 8, 9 }, { 10, 11, 12 } } };// The same array with dimensions specified.int[, ,] array3Da = new int[2, 2, 3] { { { 1, 2, 3 }, { 4, 5, 6 } },           { { 7, 8, 9 }, { 10, 11, 12 } } };// Accessing array elements.System.Console.WriteLine(array2D[0, 0]);System.Console.WriteLine(array2D[0, 1]);System.Console.WriteLine(array2D[1, 0]);System.Console.WriteLine(array2D[1, 1]);System.Console.WriteLine(array2D[3, 0]);System.Console.WriteLine(array2Db[1, 0]);System.Console.WriteLine(array3Da[1, 0, 1]);System.Console.WriteLine(array3D[1, 1, 2]);// Getting the total count of elements or the length of a given dimension.var allLength = array3D.Length;var total = 1;for (int i = 0; i < array3D.Rank; i++) { total *= array3D.GetLength(i);}System.Console.WriteLine("{0} equals {1}", allLength, total);

輸出:

12347three81212 equals 12

也可以初始化數(shù)組但不指定級別。

int[,] array4 = { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } };
如果選擇聲明一個(gè)數(shù)組變量但不將其初始化,必須使用 new 運(yùn)算符將一個(gè)數(shù)組分配給此變量。以下示例顯示 new 的用法。
int[,] array5;array5 = new int[,] { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } }; // OK//array5 = {{1,2}, {3,4}, {5,6}, {7,8}}; // Error

以下示例將值分配給特定的數(shù)組元素。

array5[2, 1] = 25;

同樣,下面的示例獲取特定數(shù)組元素的值,并將它賦給變量elementValue。

int elementValue = array5[2, 1];

以下代碼示例將數(shù)組元素初始化為默認(rèn)值(交錯(cuò)數(shù)組除外):

int[,] array6 = new int[10, 10];

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 东台市| 山阳县| 准格尔旗| 西宁市| 广宗县| 明水县| 漳浦县| 岳池县| 玉溪市| 平湖市| 太原市| 阿勒泰市| 三河市| 淮南市| 许昌市| 玛多县| 济宁市| 南京市| 应用必备| 咸宁市| 高台县| 海丰县| 曲阜市| 衡东县| 绥德县| 龙岩市| 双峰县| 新竹市| 新余市| 迁西县| 台山市| 太湖县| 龙胜| 青川县| 玛沁县| 霍山县| 枣阳市| 海晏县| 若尔盖县| 钟祥市| 桃源县|