補充教學-陣列

更新於 發佈於 閱讀時間約 7 分鐘

五種陣列使用方式

ArraySample.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ArraySample.aspx.cs" Inherits="ArraySample" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text=""></asp:Label>
<br />
<asp:Label ID="Label2" runat="server" Text=""></asp:Label>
<br />
<asp:Label ID="Label3" runat="server" Text=""></asp:Label>
<br />
<asp:Label ID="Label4" runat="server" Text=""></asp:Label>
<br />
<asp:Label ID="Label5" runat="server" Text=""></asp:Label>
<br />
<asp:Label ID="Label6" runat="server" Text=""></asp:Label>
<br />
</div>
</form>
</body>
</html>

ArraySample.aspx.cs

protected void Page_Load(object sender, EventArgs e)
{
//五種陣列使用方式

//1.宣告時同時初始化陣列(有預設值)
int[] arr1 = new int[] { 1, 2, 3 };

for(int i=0; i<arr1.Length; i++)
{
Label1.Text += $"sample1.1:陣列第{i}個元素,ary1[{i}] = {arr1[i]} <br>";
}

//或者可以省略 `new int[]`
int[] arr2 = { 4, 5, 6 };

for (int i = 0; i < arr2.Length; i++)
{
Label2.Text += $"sample1.2:陣列第{i}個元素,ary2[{i}] = {arr2[i]} <br>";
}


//2.宣告後再指定值
int[] arr3 = new int[3];

arr3[0] = 7;
arr3[1] = 8;
arr3[2] = 9;

for (int i = 0; i < arr3.Length; i++)
{
Label3.Text += $"sample2:陣列第{i}個元素,ary3[{i}] = {arr3[i]} <br>";
}

//3.使用 Array 類別(class)
Array arr4 = Array.CreateInstance(typeof(int), 3);
arr4.SetValue(1, 0);
arr4.SetValue(2, 1);
arr4.SetValue(3, 2);

for (int i = 0; i < arr3.Length; i++)
{
Label4.Text += $"sample3:陣列第{i}個元素,ary4[{i}] = {arr4.GetValue(i)} <br>";
}

//4.多維陣列宣告
//宣告一個 2x2 的整數二維陣列並初始化
int[,] arr5 = new int[2, 2] { { 1, 2 }, { 3, 4 } };

//宣告一個 2x3 的整數二維陣列,但不賦值
//int[,] ary5 = new int[2, 3];

for(int i=0; i < arr5.GetLength(0); i++)
{
for(int j=0; j < arr5.GetLength(1); j++)
{
Label5.Text += $"sample4:arr5[{i}, {j}] = {arr5[i,j]} <br>";
}
}


//5.不規則陣列(Jagged Array)
int[][] arr6 = new int[2][];

// 初始化子陣列
arr6[0] = new int[] { 1, 2 };
arr6[1] = new int[] { 3, 4, 5 };

for (int i = 0; i < arr6.Length; i++) // 外層迴圈遍歷每個子陣列
{
for (int j = 0; j < arr6[i].Length; j++) // 內層迴圈遍歷每個子陣列的元素
{
Label6.Text += $"sample5:arr6[{i}][{j}] = {arr6[i][j]} <br>";
}
}
}

執行結果:

raw-image




avatar-img
0會員
19內容數
FIRE
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
你可能也想看
Google News 追蹤
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~