如果我想在C#的Arraylist中的特定位置插入数据,就像是数组一样,但是又想有动态的特性,例如说:
目前Arraylist中有{0,1,2,3,4} 5个元素,现在使用ArrayList.insert(8,8);但是这肯定会报错,因为IndexOutOfRange了。
如果我想在该Arraylist的最后一个元素再后面几个位置的某一个地方插入(例如例子中,Arraylist.Count = 5,但是我想在下标为8的地方插入元素),该怎么做呢?
是先add几个元素到8的位置,还是有别的办法呢?
好像只能这样,你长度只有5,结果要加到8,肯定得先加几个空元素扩充,你可以用AddRange加上空元素。
例:
ArrayList al = new ArrayList(new object [] {20,"343","45" });
al.Add(1);
al.Insert(al.Count, "");
al.Insert(al.Count, "");
al.Insert(al.Count, 12);
如楼上ArrayList
Add()是在array.Count(也就是最后)这个位子插入数据
Insert(index,value) 在Index位置插入数据 而且index>=0且<=array.Count
ArrayList al = new ArrayList();
for (int i = 0; i < 3; i++)
{
al.Add(i);
}
al.Insert(1, "pinky");
这样加啊.. 将pinky插到索引是1 的地方
按你的要求不妨换成双向链表。