共用方式為


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}
                                };
    }
}