C#list 有没有索引越界啊?
时间: 2023-08-23 16:05:13 浏览: 212
C# List介绍及具体用法
在C#中,List是一个泛型集合类,它提供了动态大小、可自动扩展的数组。在使用List时,如果访问或操作索引超出了List的范围,会引发`ArgumentOutOfRangeException`异常,即索引越界异常。
例如,如果List中有5个元素,而你尝试访问索引为6的元素,就会引发索引越界异常。同样地,如果你尝试在索引为6的位置插入元素,也会引发索引越界异常。
为了避免索引越界异常,你可以在访问或操作List的索引之前,先检查索引是否在有效范围内。可以使用List的Count属性来获取当前元素的数量,并使用条件语句或异常处理来确保索引的有效性。
以下是一个示例代码,演示了如何避免索引越界异常:
```csharp
List<int> myList = new List<int> { 1, 2, 3, 4, 5 };
int index = 6;
if (index >= 0 && index < myList.Count)
{
int element = myList[index];
Console.WriteLine(element);
}
else
{
Console.WriteLine("Invalid index");
}
```
在上述示例中,我们首先检查索引是否大于等于0且小于List的Count属性。只有在索引有效时,才访问List中的元素。否则,输出一个错误消息。
总之,C#的List类提供了索引越界检查,并在索引超出范围时引发异常。你可以使用条件语句或异常处理来避免索引越界异常的发生。
阅读全文