C#教程

关注公众号 jb51net

关闭
首页 > 软件编程 > C#教程 > C#动态调整数组大小

C#动态调整数组大小的方法

作者:令狐不聪

这篇文章主要介绍了C#动态调整数组大小的方法,涉及C#中静态方法CreateInstance的使用技巧,非常具有实用价值,需要的朋友可以参考下

本文实例讲述了C#动态调整数组大小的方法。分享给大家供大家参考。具体如下:

通常,我们创建一个数组后就不能调整其长度,但是Array类提供了一个静态方法CreateInstance用来创建一个动态数组,所以我们可以通过它来动态调整数组的长度。

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 ();
  }
 }
}

希望本文所述对大家的C#程序设计有所帮助。

您可能感兴趣的文章:
阅读全文