今天碰到一个很奇怪的现象,先贴下代码给大家看看
后来一想,原因在这里:
假定条件成立:每一个元素都符合if里的要求,那么,当Remove掉第一条数据后,原来的第二条数据到了第一条,就是说,第一条数据被删除后后面的数据全部向前移了一位,然后for循环走到i=1,这个时候判断的是sites[1],这个时候的sites[0],也就是原本来的sites[1]就被跳过去了,所以最后删除的是一半的数据而不是全部的。
解决办法:
今天碰到一个很奇怪的现象,先贴下代码给大家看看
后来一想,原因在这里:
假定条件成立:每一个元素都符合if里的要求,那么,当Remove掉第一条数据后,原来的第二条数据到了第一条,就是说,第一条数据被删除后后面的数据全部向前移了一位,然后for循环走到i=1,这个时候判断的是sites[1],这个时候的sites[0],也就是原本来的sites[1]就被跳过去了,所以最后删除的是一半的数据而不是全部的。
解决办法: