关于下限非0的数组

对下限非0的数组的创建和测试过程:
using System;
using NUnit.Framework;

[TestFixture]
public class App
{
 static void Main()
 {
  App app = new App();
  app.Run();
 }
 
 [Test]
 public void Run()
 {
  int[] lower = { 3, 5 };   // 一维起始下限为 3 ,二维起始下限为 5 .
  int[] length = { 2, 3 };  // 一维的长度为 2, 二维的长度为 3.

  // 创建非0下限数组.
  decimal[,] dec = (decimal[,]) Array.CreateInstance(typeof(decimal),
   length, lower);
       
  Assert.IsNotNull(dec, "dec is Null");
       
  // 一维循环.
  for (int i = dec.GetLowerBound(0); i <= dec.GetUpperBound(0); i++)
  {
   // 二维循环
   for (int j = dec.GetLowerBound(1); j <= dec.GetUpperBound(1); j++)
   {
    // 赋值.
    int[] val = new int[2] { i, j };
    dec.SetValue((decimal) (i * j), val);

    Console.WriteLine("dec[{0},{1}] is: {2}", i, j, dec[i,j]);
   }
  }

  // 测试
  Assert.AreEqual(15M, dec[3,5]);
  Assert.AreEqual(28M, dec[4,7]);
 }
}

posted on 2004-02-13 12:15  afxucamd  阅读(1310)  评论(2编辑  收藏  举报

导航