zoukankan      html  css  js  c++  java
  • for循环之删除注意细节

    前面说过用循环的地方尽量用foreach循环,既简洁又高效。可是删除的时候用foreach会出错,因此我们必须使用for循环来进行操作。 我写了下面一个测试demo,具体界面如下: for   第一个图是删除前的,第二个图是删除后的,具体的删除代码如下: for (int i = 0; i < lsvShow.Items.Count; i++) { lsvShow.Items.Remove(lsvShow.Items[i]); } 经过仔细分析,我发现我们删除的时候lsvShow.Count减小一个,删除了一个吗,但是i的值却一直再循环,所以就会导致lsvShow的item中的index出现变化,因此逐渐减小。 换个方式:如果lshow.item.count是固定值10的话,那么在上面删除时会报异常。因此我们应该删除时把i的值减少1;变成如下代码: if (lsvShow.Items.Count!=0) { for (int i = 0; i < lsvShow.Items.Count; i++) { lsvShow.Items.Remove(lsvShow.Items[i]); i--; } } 这样我们就可以清空我们所有的数据了。
  • 相关阅读:
    开启Spring Boot 之旅
    Java笔试面试练习题---集合
    Python
    Python
    Redis -下载与基本使用
    Git
    Vue全家桶-Vue-router&Vuex
    Es6
    Vue-前端
    Django基础及实战
  • 原文地址:https://www.cnblogs.com/vsdot/p/3263269.html
Copyright © 2011-2022 走看看