现在的位置: 首页 > 综合 > 正文

VB.NET中获取数组的秩(维数)和维度的上限

2013年09月06日 ⁄ 综合 ⁄ 共 972字 ⁄ 字号 评论关闭

【以下资源来自MSDN】

Array.Rank 属性

    获取 Array 的秩(维数)。

Array.GetUpperBound 方法

    获取 Array 的指定维度的上限。

Array.Length 属性

    获得一个 32 位整数,该整数表示 Array 的所有维数中元素的总数。

Array.CreateInstance 方法

    初始化 Array 类的新实例

e.g.
        Dim a(20, 30, 40) As Int32
        MessageBox.Show(a.Rank) '3
        MessageBox.Show(a.GetUpperBound(1)) '20
        MessageBox.Show(a.Length) '26691

        Dim arr As Array = Array.CreateInstance(GetType(Int32), 2, 3, 4, 5, 6)
        arr.SetValue(2004, 1, 2, 3, 4, 5)
        MessageBox.Show(arr.GetValue(1, 2, 3, 4, 5)) '2004

【注意】
与大多数类不同,Array 提供CreateInstance方法,以便允许晚期绑定访问,而不是提供公共构造函数。
        Dim arrOk As Array
        arrOk = Array.CreateInstance(GetType(String), 4, 5)
        MessageBox.Show(arrOk.Rank)  '2

        '以下是错误的
        Dim arrErr As Array
        arrErr.SetValue(0, 0)                        '错误提示:未将对象引用设置到对象的实例
        MessageBox.Show(arrErr.Rank)      '错误提示:未将对象引用设置到对象的实例

        Dim arrErr2 As New Array               '错误提示:“New”不能在声明为“MustInherit”的类上使用

Array的GetHashCode方法:
Object.GetHashCode 方法
用作特定类型的哈希函数,适合在哈希算法和数据结构(如哈希表)中使用。
(明天研究哈希了再说)

 

抱歉!评论已关闭.