数组段ArraySegment<T>的使用

/*
数组段ArraySegment<T>的使用
*/
using System;

namespace Frank
{
	public class Test
    {
        public static void Main(string[] args)
        {
			int[] array1 = new int[]{1,2,3,4,5};
			int[] array2 = new int[]{6,7,8,9};
			ArraySegment<int>[] as1 = new ArraySegment<int>[]//实例化泛型数组段,指定输入数组的开始索引及个数
			{
				new ArraySegment<int>(array1,0,2),
				new ArraySegment<int>(array2,1,2)
			};
			Print(as1);
        }
		public static void Print(ArraySegment<int>[] value)
		{
			foreach(var segment in value)//offset 数组指定的开始索引,Count元素个数
			{
				for(int i = segment.Offset; i < segment.Offset+segment.Count;i++)
				{
					System.Console.Write(segment.Array[i]+" ");//获取里面单个元素
				}
				System.Console.Write("\n");
			}
		}
	}
}

  如果在方法中改变数组的值,那么也会反应到原数组中去。

posted on 2013-11-26 15:23  wp456  阅读(2460)  评论(0)    收藏  举报

导航