如果我在C#.NET中使用ArrayList,订单是否保证与我向其添加项目的顺序保持一致?
是的,元素总是添加到最后(除非您另行指定,例如调用Insert).换句话说,如果你这样做:
int size = list.Count; int index = list.Add(element); Assert.AreEqual(size, index); // Element is always added at the end Assert.AreEqual(element, list[index]); // Returned index is position in list
如果您删除任何早期元素或在其前面插入新元素,位置将会改变.
你是否有充分的理由ArrayList
而不是List
顺便使用?非泛型集合是如此 2003 ...
(List
顺便说一下,顺序也是稳定的.)
是的,除非您的某些代码通过交换更改订单.