C#中数组段用法实例分析
本文实例讲述了C#中数组段用法。分享给大家供大家参考。具体分析如下:
1.数组段说明
①结构ArraySegment<T>表示数组的一段。如果某方法应返回数组中的一部分,或者给
某方法传递数组的一部分,就可以使用数组段。通过ArraySegment<T>可以传递三个参数
(数组,数组段开始位置,从开始位置选择的元素个数),也可以只传递一个参数
②数组段不会复制原数组的元素,但原数组可以通过ArraySegment<T>中的Array属性访问,
如果数组段中的元素改变了,则这些变化就会反映到原数组
2.一个例子
privateintSumOfSegments(ArraySegment<int>[]segments)
{
intsum=0;
foreach(ArraySegment<int>segmentinsegments)
//循环存放数组段的数组
{
for(inti=segment.Offset;i<segment.Offset+
segment.Count;i++)
//处理数组段,Offset为在元素数组中的起始位置
//Count为要提取的个数
//Arary为原始数组
{
sum+=segment.Array[i];
//计算元素之和
}
}
returnsum;
}
调用:
privatevoidbutton1_Click(objectsender,EventArgse)
{
int[]arr1=newint[]{1,4,5,11,14,18};
int[]arr2=newint[]{3,4,5,18,21,27,33};
//定义数组段的数组
varsegments=newArraySegment<int>[2]
{
newArraySegment<int>(arr1,0,3),
newArraySegment<int>(arr2,3,3)
};
varsum=SumOfSegments(segments);
MessageBox.Show(sum.ToString());
}
希望本文所述对大家的C#程序设计有所帮助。
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下