读书人

跪求大神!怎么人已删除数组中的一条记

发布时间: 2013-08-09 15:16:24 作者: rapoo

跪求大神!如何人已删除数组中的一条记录!!坐等
跪求大神!怎么人已删除数组中的一条记录!坐等
跪求大神!怎么人已删除数组中的一条记录!坐等
我想首先判断itemId = "548089"是否有相同的 如果有在判断parentId = "0"的 删除
[解决办法]
这样不行?cartList.Remove(object);//object

[解决办法]
以上代码不能用for循环,因为循环内remove数组中的一个后,将会在运行时出现数组索引溢出错误,改用while循环即可int i = 0; while (i < cartlist.length) { ... }
[解决办法]
你如果一次只删除一个产品,就在for循环里面删除就可了。删除完后就return 集合就可以了 .
如果要删除多个,你可以不删除,直接再建一个集合,把不需要删除的存进去,然后return 你新建的集合就可以了。

如果一定要做删除可以,在for循环里面每删一个对象后把下标减1就可以了.
这样(你这里为什么要cartlist.Count - 1)
for (int i = 0; i < cartlist.Count; i++)
{
string itemId = cartlist[i].ItemId;
for (int j = 0; j < cartlist.Count; j++)
{
if (cartlist[j].ItemId == itemId && cartlist[j].ParentId == "0")
{
cartList.Remove(cartlist[i]);;//object
i--;//这样下标就回到了删除后的下一个,也不会越界
break;
}
}


}
[解决办法]

引用:
以上代码不能用for循环,因为循环内remove数组中的一个后,将会在运行时出现数组索引溢出错误,改用while循环即可int i = 0; while (i < cartlist.length) { ... }
作为List remove之后不会存在索引溢出吧?

读书人网 >asp.net

热点推荐