关于下限非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]);
}
}