前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CA1814:与多维数组相比,首选使用交错数组

CA1814:与多维数组相比,首选使用交错数组

作者头像
呆呆
发布2022-02-19 18:57:07
5880
发布2022-02-19 18:57:07
举报
文章被收录于专栏:centosDaicentosDai

规则 ID

CA1814

类别

“性能”

修复是中断修复还是非中断修复

重大

原因

将成员声明为多维数组,这可能会浪费某些数据集的空间。

规则说明

在多维数组中,每个维度中的每个元素都具有与该维度中的其他元素相同的固定大小。 在交错数组(即多个数组构成的数组)中,每个内部数组的大小可以不同。 通过仅使用给定数组所需的空间,就不会浪费空间。 此 CA1814 规则建议切换到交错数组以节省内存。

如何解决冲突

若要解决此规则的冲突,请将多维数组更改为交错数组。

何时禁止显示警告

如果多维数组不会浪费空间,则可以禁止显示此规则的警告。

示例

以下示例显示了交错数组和多维数组的声明。

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

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}

};

}

本文系外文翻译,前往查看

如有侵权,请联系?cloudcommunity@tencent.com?删除。

本文系外文翻译前往查看

如有侵权,请联系?cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com