一. C#數組的屬性
一維數組和多維(二維以上)的數組的屬性和方法都是差不多的,主要是在數組的方法上有些參數的不一致,現在我們先看下一維數組的有關屬性;
int[] myint = new int[5];
for (int x = 1; x <= 5; x++)
myint[x - 1] = x;
Console.WriteLine("顯示數組中的數據");
for (int i = 1; i <= 5; i++)
Console.WriteLine("第{0}個元素的值是{1}", i, myint[i-1]);
Console.WriteLine("顯示數組的性質");
Console.WriteLine(myint.IsFixedSize);//是否固定大小
Console.WriteLine(myint.IsReadOnly);// 是否只讀
Console.WriteLine(myint.IsSynchronized);//是否異步操作
Console.WriteLine(myint.Length);//數組的長度
Console.WriteLine(myint.LongLength);//數組的長度
Console.WriteLine(myint.Rank);//數組的維數
Console.WriteLine(myint.SyncRoot);//數組的對象
運行圖如下:
數組元素的索引號是從0開始的,myint[0] 是數組的第一個元素,其最後一個元素是myint[ArraySize-1].如果索引號的值大於等於數組的長度,則會出現錯誤異常:
二. C#數組提供的方法
1. 常用的實例對象方法
Console.WriteLine(Array.IndexOf(myint,3));
//獲取數組中元素為3在數組中的索引號
Console.WriteLine(Array.LastIndexOf(myint, 3));
//獲取數組中元素為3在數組中的索引號,數組中最後與3匹配
Console.WriteLine(Array.AsReadOnly(myint));//
Array.Reverse(myint);//將數組的元素
for (int i = 1; i <= 5; i++)
Console.WriteLine("第{0}個元素的值是{1}", i, myint[i - 1]);
Console.WriteLine(myint.GetLength(0));//獲取指定維數的元素數
Console.WriteLine(myint.GetLongLength(0));
Console.WriteLine(myint.GetLowerBound(0));//獲取指定維數的下限;
Console.WriteLine(myint.GetType());//當前實例對象的類型
Console.WriteLine(myint.GetValue(2));//獲取數組中索引號為2的元素的值
Console.WriteLine(myint.GetHashCode());//獲取對象的哈希嗎
Console.WriteLine(myint.ToString());
Console.WriteLine(myint.GetEnumerator());//獲取對象的枚舉
myint.SetValue(111,0);//設置{newValue,index_of_Array
Console.WriteLine(myint[0]);
Console.WriteLine("Clone方法");
int[] orignalArray = { 1, 2, 3 };
int[] cloneArray = (int[])orignalArray.Clone();//克隆一個新的一樣的數組
cloneArray[0] = 10;
cloneArray[1] = 20;
cloneArray[2] = 30;
foreach (int i in orignalArray)
Console.WriteLine(i);
foreach (int i in cloneArray)
Console.WriteLine(i);
int[] copyArr = new int[myint.Length];
myint.CopyTo(copyArr,0);//復制一個數組到另一個數組
Console.WriteLine("{0},{1},{2},{3},{4}", copyArr[0], copyArr[1], copyArr[2], copyArr[3], copyArr[4]);
Console.WriteLine("{0},{1},{2},{3},{4}", myint[0], myint[1], myint[2], myint[3], myint[4]);
int[] array_1 = new int[5];
for (int i = array_1.GetLowerBound(0); i <= array_1.GetUpperBound(0); i++)
array_1[i] = i + 1;//獲取指定維數的下限 獲取指定維數的上限
for (int j = array_1.GetLowerBound(0); j <= array_1.GetUpperBound(0); j++)
Console.WriteLine("array_1[{0}] = {1}", j, array_1[j]);
程序運行的結果是:
下一節將詳細介紹Array的靜態方法。