`
zhyxfancy
  • 浏览: 54035 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

容器的遍历与相关的操作

阅读更多
在做jcy二期时候我会定义一个List picList = new ArrayList()
在遍历的时候会用一个for(int i = 0 ;....)
其实这样也无可厚非,但是当我要删除其中一条记录的时候,比如删除第三天picList.remove(bean)此时piclist的size就会减一,再下一次循环的时候你就会漏掉相应的next的元素(当然当时也做了相应的处理)。

在我的第二个项目中采用Iterator接口,在遍历的时候采用Iterator的remove方法,不需要做任何其它的附加操作,研究进去的话就是Iterator里面加了“锁”
分享到:
评论

相关推荐

    std::List类的遍历获得元素的操作二法

    在C++标准库中,`std::list`是一种双链表容器,它提供了一种高效的方式来存储和操作序列数据。由于`std::list`不是随机访问容器,因此它不支持像数组那样的通过索引直接访问元素(如`[]`运算符)。但是,`std::list`...

    C# Winform遍历控件(窗体、Panel的子控件)Controls

    与遍历窗体上的控件类似,我们也可以遍历Panel中的子控件。这对于需要对特定容器内的控件进行统一操作的情况非常有用。 **示例代码:** ```csharp /// /// 遍历Panel中的子控件 /// ///控件名称 public void ...

    遍历窗体中的所有控件

    1. **枚举窗体**:使用Windows API函数`EnumWindows`,遍历系统中所有的顶级窗口,检查每个窗口的标题是否与搜索框中的文本匹配。 2. **获取控件句柄**:找到匹配的窗体后,使用API函数`FindWindowEx`来获取窗体上...

    C++11 unordered_map与map(插入,遍历,Find)效率对比。

    如果需要保持元素的排序顺序,或者插入和遍历操作的效率相对更重要,那么`std::map`可能是更好的选择。而如果更注重查找速度,并且不需要元素顺序,`std::unordered_map`则更合适。 此外,`std::unordered_map`的...

    图的遍历程序~

    选择正确的数据结构来表示图,不仅能够有效地存储图的信息,也能为后续的遍历操作带来便利。 对于初学者来说,通过编写图的遍历程序能够加深对图论中基本概念和数据结构的理解。通过不断地练习和调试,也能够提升...

    QT遍历窗体的控件的方法

    ### QT遍历窗体的控件的方法 在QT框架中,有时我们需要遍历窗体上的所有控件以执行某些操作,比如更改按钮的文字、获取...- 当涉及控件的删除时,需要确保删除操作不会影响到正在遍历的容器,避免程序出现未定义行为。

    层次遍历多元树(在文件tree.cpp中3个空)、先根遍历、后根遍历的递归函数

    最后,后根遍历与先根遍历相反,顺序是“左-右-根”。同样,我们需要在`tree.h`中实现对当前节点的访问和递归调用到左右子树的逻辑,但顺序稍有改变: ```cpp void postOrderTraversal(TreeNode* node) { if (node...

    C#代码之输出与数组的遍历与存取

    在深入探讨C#中的输出与数组的遍历及存取之前,我们首先应当明确几个基本概念:C#是一种面向对象的编程语言,由微软开发,主要用于Windows平台的应用程序开发,但近年来也逐渐扩展到了跨平台领域。C#的输出、数组的...

    C++ Vector遍历的几种方式

    - **`std::for_each`**和**`boost::foreach`**在性能上与迭代器遍历相当,但更适用于执行特定操作。 在实际编程中,应根据具体需求选择合适的遍历方式。如果只是简单地遍历并显示元素,range-based for循环是首选。...

    DSAinC++3-遍历迭代与递归1

    3.1 循环结构与遍历操作 循环是编程中最基础的控制结构之一,用于重复执行一段代码。循环结构通常包括三个关键部分:初始化(初始化循环变量)、循环条件(判断是否继续执行循环)和循环体(要重复执行的代码)。...

    C#遍历DataSet中数据的几种方法总结

    遍历所有表和它们的所有行与列 ```csharp foreach (DataTable dt in YourDataset.Tables) { // 遍历所有的 DataTable foreach (DataRow dr in dt.Rows) { // 遍历所有的行 foreach (DataColumn dc in dt....

    objective-c的四种遍历方法

    但是,如果你在遍历过程中修改容器对象,会触发运行时错误。 3. **NSEnumerator(枚举器)** NSEnumerator 提供了一种迭代集合元素的方法,适用于需要更灵活遍历策略的情况。例如,你可以通过 `nextObject` 方法...

    广度优先遍历,深度优先遍历实例代码

    `Graph.h`可能定义了图的数据结构,`Node.h`可能定义了图的节点类,而`Path.cpp`和`Path.h`可能与路径查找相关,可能包含了计算最短路径的函数。`Main.cpp`通常是程序的入口点,调用这些算法并打印结果。 在实际...

    二叉树的层次遍历 vc++控制台程序

    在实际编程中,为了实现层次遍历,我们还需要了解C++的内存管理和指针操作,以及如何使用标准库中的`queue`容器。此外,对于大型项目,良好的代码组织和注释也是必不可少的,这样可以使代码易于理解和维护。这个...

    任务栏托盘图标 遍历托盘

    5. **遍历托盘图标**:如果你需要遍历任务栏中的所有托盘图标,可以使用`EnumWindows`函数配合`FindWindowEx`函数,查找具有特定类名(如`TrayNotifyWnd`)的窗口,这些窗口通常是系统托盘容器。然后,你可以继续...

    与操作容器有关的设计模式

    ### 与操作容器有关的设计模式 #### 一、引言 在软件开发过程中,容器类是一种常见的数据结构,用于封装一组对象。为了更好地管理和操作这些容器内的对象,设计模式提供了有效的解决方案。本文主要探讨三种与容器...

    javascript客户端遍历控件与获取父容器对象示例代码

    在DOM操作中,有时需要获取某个元素的父容器,以便对父容器进行操作。这可以通过`parentNode`属性实现。`parentNode`属性能够获取指定元素的直接父节点,通过连续使用多次`parentNode`,可以向上遍历DOM树,从而获取...

    java程序的四种遍历

    根据提供的信息,我们可以总结出关于Java程序中四种遍历方式的相关知识点。首先,这段代码主要展示了如何在Java中遍历一个列表(`List`),并且提供了四种不同的遍历方法。接下来,我们将详细介绍这四种遍历方式及其...

    C++二叉树非递归后序遍历

    如果节点值不是唯一的,我们需要用其他方式来跟踪已访问的节点,例如,可以使用一个额外的容器来存储已访问的节点指针。 总结来说,非递归后序遍历二叉树是通过模拟递归过程,利用栈进行数据的临时存储,以达到遍历...

Global site tag (gtag.js) - Google Analytics