C#中数组段用法实例分析

作者:永远爱好写程序 时间:2022-06-11 23:08:05 

本文实例讲述了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#程序设计有所帮助。

标签:C#,数组段
0
投稿

猜你喜欢

  • Mybatis分页插件PageHelper的使用详解

    2022-02-26 16:43:05
  • Java sha1散列算法原理及代码实例

    2021-06-28 05:50:22
  • JAVA多线程知识汇总

    2021-08-03 09:04:47
  • JavaFx实现拼图游戏

    2022-04-20 01:05:05
  • 详解 Java中日期数据类型的处理之格式转换的实例

    2021-12-29 05:17:49
  • java迷宫算法的理解(递归分割,递归回溯,深搜,广搜)

    2022-10-22 10:36:31
  • springboot中PostMapping正常接收json参数后返回404问题

    2021-07-22 20:46:28
  • Spring基于AspectJ的AOP开发案例解析

    2021-12-01 01:59:22
  • spring boot validation参数校验实例分析

    2023-02-03 02:50:38
  • C#Button窗体常用属性及事件详解

    2021-08-29 03:43:28
  • c# socket编程udp客户端实现代码分享

    2023-06-16 05:03:31
  • 简单聊聊c# 事件

    2022-03-05 06:16:52
  • IDEA教程创建SpringBoot前后端分离项目示例图解

    2022-06-30 02:41:10
  • C#创建安全的栈(Stack)存储结构

    2021-11-21 08:01:33
  • Android服务Service教程

    2022-02-19 13:05:40
  • mybatis中foreach嵌套if标签方式

    2023-11-20 23:11:05
  • Java 添加和删除PDF图层的示例代码

    2022-09-03 00:29:01
  • java中的HashMap多层嵌套

    2023-11-27 07:34:52
  • C#中结构(struct)的部分初始化和完全初始化实例分析

    2021-11-01 16:33:36
  • Java实现抠图片文字或签名的完整代码

    2023-04-18 00:04:44
  • asp之家 软件编程 m.aspxhome.com