由于你提供的信息有限,现在能说的是:
1.当用ArrayList.Add(object o)时,假如o对象已经存在,还是会添加到ArrayList的末尾。所以检查你的程序是否多次添加了同一对象?
2.当用ArrayList["name"]=...添加对象时,若对象已存在,酒会、、就会改写原对象。所以你也可以考虑用这种方式添加对象。
1.当用ArrayList.Add(object o)时,假如o对象已经存在,还是会添加到ArrayList的末尾。所以检查你的程序是否多次添加了同一对象?
2.当用ArrayList["name"]=...添加对象时,若对象已存在,酒会、、就会改写原对象。所以你也可以考虑用这种方式添加对象。
使用ArrayList[index]时必须保证该index已经放入对象,不然会引发下标越界的异常。
if (userList.BinarySearch(obj) < 0) {//不存在则添加
userList.Add(obj);
}
否则用Contains:
if (userList.Contains(obj)==false) {//不包含则添加
userList.Add(obj);
}
ArrayList al =new ArrayList()....
for(int i=0;i<n;i++)
al.Add(..);......
if(al.Count>0)
al.Remove();