为什么争论超出范围?

asd*_*qwe 2 c# list

我的代码如下:

for(int i=1; i < 21; i++)
{
    list.Add(random.Next(100));
}

for(int i=1; i < 21; i++)
{
    Console.Write(list[i] + ", ");
}
Run Code Online (Sandbox Code Playgroud)

不过我刚开了一个Argument out of range exceptioni.

如果我改变的第二个环值i,以0 and 20它完美的作品,怎么回事?

Bra*_*don 17

当您构建列表时,您将添加20个项目.

但是,列表是0索引的.

当你说list[1]你实际上在列表中获得第二个元素时.所以list[20]实际上是元素21,它不存在.