日期:2014-05-18  浏览次数:20785 次

动态数组
int[] lengthsArr = new int[] { 3, 4 };
  int[] lowerBoundsArr ={ 1, 11 };
  Array arr = Array.CreateInstance(Type.GetType("System.Int32"), lengthsArr, lowerBoundsArr);
  Random r = new Random();
  for(int i=arr.GetLowerBound(0);i<arr.GetUpperBound(0);i++)
  {
  for(int j=arr.GetLowerBound(1);j<arr.GetUpperBound(1);j++)
  {
  arr.SetValue((int)r.Next()%100,i,j);
  Console.WriteLine("arr[{0},{1}]={3}", i, j,arr.GetValue(i,j));
  }
  }

------解决方案--------------------
C# code
 Console.WriteLine("arr[{0},{1}]={3}",   i,   j,arr.GetValue(i,j)); 这行有误

------解决方案--------------------
错误提示是“索引<以零为启始>必须大于或等于零,并且小于引数清单的大小”,你这里i,j的值不为零,arr[i,j]超出了引数清单的大小,你直接输出arr.GetValue(i,j)是没有问题的