gpt4 book ai didi

c# - 调整 C# 数组的大小

转载 作者:行者123 更新时间:2023-12-02 14:45:57 24 4
gpt4 key购买 nike

我在调整 C# 2D 数组大小时遇到​​一些问题:我在私有(private)部分有以下代码:

private int[,] _TestArray;

在我的属性 getter 中,我正在做:

if (_TestArray ==null)
_TestArray =new integer[1,1];

然后在一个单独的函数中,我正在做:

_TestArray =new[x,y];

其中 x 和 y 是两个整数,它们应该是数组的新大小。当我尝试向数组添加元素时,我得到了指向该行的索引超出范围异常点:

TestArray[x, y] = 5;

我的印象是执行一个新的 int[x,y] 会调整数组的大小,但显然不是。有人可以告诉我我错过了什么吗?我看过其他答案,但似乎没有帮助。任何帮助表示赞赏。干杯肖恩。

最佳答案

数组中最后一个有效元素是 TestArray[x-1, y-1]。它从 0 开始计数。因此您可能想使用 new int[x+1, y+1] 但这只是猜测。请考虑使用 List<Point>相反,一次调整一个元素的数组大小是非常昂贵的。 List 使用更智能的算法,您不必自己将元素复制到新数组中。

关于c# - 调整 C# 数组的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7960879/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com