本文實例講述了C#中數組段用法。分享給大家供大家參考。具體分析如下:
1.數組段說明
① 結構ArraySegment<T>表示數組的一段。如果某方法應返回數組中的一部分,或者給
某方法傳遞數組的一部分,就可以使用數組段。通過ArraySegment<T>可以傳遞三個參數
(數組,數組段開始位置,從開始位置選擇的元素個數),也可以只傳遞一個參數
② 數組段不會復制原數組的元素,但原數組可以通過ArraySegment<T>中的Array屬性訪問,
如果數組段中的元素改變了,則這些變化就會反映到原數組
2.一個例子
private int SumOfSegments(ArraySegment<int>[] segments){ int sum = 0; foreach(ArraySegment<int> segment in segments) //循環存放數組段的數組 { for (int i = segment.Offset; i < segment.Offset + segment.Count; i++) //處理數組段,Offset為在元素數組中的起始位置 //Count為要提取的個數 //Arary為原始數組 { sum += segment.Array[i]; //計算元素之和 } } return sum;}
調用:
private void button1_Click(object sender, EventArgs e){ int[] arr1 = new int[] { 1,4,5,11,14,18}; int[] arr2 = new int[] {3,4,5,18,21,27,33 }; //定義數組段的數組 var segments = new ArraySegment<int>[2] { new ArraySegment<int>(arr1,0,3), new ArraySegment<int>(arr2,3,3) }; var sum=SumOfSegments(segments); MessageBox.Show(sum.ToString());}
希望本文所述對大家的C#程序設計有所幫助。
新聞熱點
疑難解答