Beginner with c# 5 (轉)

worldblog發表於2007-12-02
Beginner with c# 5 (轉)[@more@]1。5 陣列型別(Array types)

陣列可以是一維的,也可是多維的。數祖的成員可以是整齊的,也可以是變長(jagged)的。

一維的陣列是最普通,最簡單的。這裡值給出一個例子,就不多解釋了。*/
using System;
class Test
{
 static void Main() {
  int[] arr = new int[5];
  for (int i = 0; i < arr.Length; i++)
  arr[i] = i * i;
  for (int i = 0; i < arr.Length; i++)
  Console.WriteLine("arr[{0}] = {1}", i, arr[i]);
 }
}

/* 結果如下:
arr[0] = 0
arr[1] = 1
arr[2] = 4
arr[3] = 9
arr[4] = 16

我們還可以比較的看看多維,規則,變長的陣列的定義和賦值:*/
class Test
{
 static void Main() {
  int[] a1 = new int[] {1, 2, 3};  //一維
  int[,] a2 = new int[,] {{1, 2, 3}, {4, 5, 6}};  //二維
  int[,,] a3 = new int[10, 20, 30];  //三維
  int[][] j2 = new int[3][];  //變長
  j2[0] = new int[] {1, 2, 3};
  j2[1] = new int[] {1, 2, 3, 4, 5, 6};
  j2[2] = new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9};
 }
}
/*
上面的例子給出了各種樣式的陣列。變數a1、a2和a3是規則陣列。j2則是變長的陣列。
規則陣列很容易就可以計算出它們的長度。比如a3的長度是:10*20*30=6000。相反,變長
陣列就有點不同,它的每一個維度都必須單獨定義。如j2的第一維度是3,第二個是6,第
三個是9,所以總長度是:1*3+1*6+1*9=18。

上面對陣列的賦值是嚴謹的風格,在某種情況下,我們可以簡化寫法,但我總覺得這種簡化
應用限制太多,容易出錯。在這裡就不作介紹了。這裡再給一個例子說明中的引數如何
賦值*/
class Test
{
 static void F(long[] arr) {}
 static void Main() {
  F(new longt[] {1, 2, 3});
 }
}

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-987290/,如需轉載,請註明出處,否則將追究法律責任。