- namespace ArrayManipulation
- {
- Class Program
- {
- static void Main (String[] args)
- {
- int[] arr = new int[]{1,2,3};
- PrintArr(arr);
- arr = (int[])Redim(arr,5);
- PrintArr (arr);
- arr = (int[]) Redim (arr, 2);
- PrintArr (arr);
- )
- public static Array Redim (Array origArray, int desiredSize)
- {
- //determine the type of element
- Type t = origArray.GetType().GetElementType();
- //create a number of elements with a new array of expectations
- //new array type must match the type of the original array
- Array newArray = Array.CreateInstance (t, desiredSize);
- //copy the original elements of the array to the new array
- Array.Copy (origArray, 0, newArray, 0, Math.Min (origArray.Length, desiredSize));
- //return new array
- return newArray;
- }
- //print array
- public static void PrintArr (int[] arr)
- {
- foreach (int x in arr)
- {
- Console.Write (x + ",");
- }
- Console.WriteLine ();
- }
- }
- }
- //该片段来自于http://www.codesnippet.cn/detail/050920135645.html
来源: http://www.codesnippet.cn/detail/050920135645.html