共用方式為


CA1814:建議使用不規則陣列取代多維陣列

型別名稱

PreferJaggedArraysOverMultidimensional

CheckId

CA1814

分類

Microsoft.Performance

中斷變更

中斷

原因

成員被宣告為多維陣列。

規則描述

不規則陣列是一種陣列,其元素也是陣列。 組成元素的陣列大小可以不相同,對於某些資料集而言較不會浪費空間。

如何修正違規

若要修正此規則的違規情形,請將多維陣列變更為不規則陣列。

隱藏警告的時機

如果必須符合 CLS 標準或多維陣列不會浪費空間,則您可以隱藏這項規則的警告。

範例

下列範例會顯示不規則陣列和多維陣列的宣告。

Imports System

Public Class ArrayHolder
    Private jaggedArray As Integer()() =  {New Integer() {1, 2, 3, 4}, _
                                           New Integer() {5, 6, 7}, _
                                           New Integer() {8}, _
                                           New Integer() {9}}

    Private multiDimArray As Integer(,) =  {{1, 2, 3, 4}, _
                                            {5, 6, 7, 0}, _
                                            {8, 0, 0, 0}, _
                                            {9, 0, 0, 0}}
End Class
using System;

namespace PerformanceLibrary
{
    public class ArrayHolder
    {
        int[][] jaggedArray = { new int[] {1,2,3,4},
                                new int[] {5,6,7},
                                new int[] {8},
                                new int[] {9}
                              };

        int [,] multiDimArray = {{1,2,3,4},
                                 {5,6,7,0},
                                 {8,0,0,0},
                                 {9,0,0,0}
                                };
    }
}