创建空数组并添加值导致“;数组索引超出范围”;
本文关键字:数组 索引 范围 添加 创建 | 更新日期: 2023-09-27 18:21:35
这里出了什么问题?
string[] keysDictionary = new string[]{};
keysDictionary [0] = "test";
我得到
System.IndexOutOfRangeException数组索引超出范围。
不能向长度为0的数组添加任何内容。您实际上是在尝试设置一个没有元素的数组的第一个元素的值。如果要执行此操作,则不能调整数组的大小。
var keysDictionary = new List<string>();
keysDictionary.Add("test");
通过声明{},您将其定义为一个空数组。
因此,您应该将大小定义为:
string[] keysDictionary = new string[1];
keysDictionary [0] = "test";
或
初始化如下:
string[] keysDictionary = new string[]{"test"};
new string[]{}
创建零长度数组
您需要指定数组的大小。
例如
string[] keysDictionary = new string[1];
keysDictionary [0] = "test";
如果您想要在添加值时动态更改大小的数组,请使用List。