`

ArrayList的一点研究

阅读更多
public class ArrayListTest {
    public static void main(String[] args) {
        ArrayListTest.test3();
    }

    // 抛异常,循环的时候不允许删除元素
    public static void test1() {
        List<String> reList = new ArrayList<String>();
        reList.add("1");
        reList.add("2");
        reList.add("3");
        reList.add("4");
        for (String s : reList) {
            if (s.equals("2")) {
                reList.remove(s);
            }
        }
        System.out.println(reList.toString());
    }

    // 抛异常,通过这种方式创建的List不允许变更长度
    public static void test2() {
        List<String> reList = Arrays.asList("1", "2", "3", "4");
        reList.add("5");
        System.out.println(reList.toString());
    }

    // 通过迭代器可以在循环的时候删除
    public static void test3() {
        List<String> reList = new ArrayList<String>();
        reList.add("1");
        reList.add("2");
        reList.add("3");
        reList.add("4");
        Iterator<String> it = reList.iterator();
        while (it.hasNext()) {
            String i = it.next();
            if (i.equals("2")) {
                it.remove();
            }
        }
        System.out.println(reList.toString());
    }
}

 

分享到:
评论

相关推荐

    基于数据结构与简化内存模型的Java集合教学方法研究.pdf

    数据结构是一门研究数据组织、存储、操作的学科。在教学中,教师需要先回顾数据结构课程的基础内容,如数据的组织和存储方式、线性结构与非线性结构的区别,以及线性表、顺序表和链表的概念和特点。线性结构可以...

    Java语言的科学与艺术(国外计算机科学经典教材)

    本书使用传记简介、引用以及哲学片段来突出计算的历史和理性背景,着重强调算法和问题解决,而今天的初级教科书通常忽略了这一点。 内容简介 自1995年首次发布以来,Java编程语言作为一种教学语言变得日益重要,现在...

    Android应用源码之自定义本地相册的功能,可以多选图片用-IT计算机-毕业设计.zip

    这可能涉及到Intent的使用,通过putParcelableArrayListExtra方法传递ArrayList或ArrayList。 此外,考虑到权限管理,Android 6.0及以上版本需要在运行时请求读取外部存储的权限。因此,应用需要处理权限请求,确保...

    CodingJava:只是解决了一点问题

    本主题围绕“CodingJava:只是解决了一点问题”,我们将深入探讨Java编程中的关键概念和技术,以及如何解决常见问题。 1. **基础语法**:Java的基础语法与C++类似,但更加简洁且具有自动内存管理。了解基本数据类型...

    Android应用源码之listviewdrop(可上下拖拽的列表).rar

    在跟踪过程中,需要更新ListView的数据源(通常是ArrayList或其他适配的数据结构)以反映元素的新顺序。 接着,我们需要关注适配器(Adapter)的作用。适配器是连接ListView和数据源的桥梁,它负责将数据转化为...

    Frank-Wolfe-JAVA.rar_Frank_Frank-Wolfe

    1. **初始化**:首先,我们需要选择一个初始点,这可以是可行域内的任意一点,或者通过其他优化策略找到的点。 2. **梯度计算**:在每一步迭代中,我们计算目标函数在当前点的梯度,这是优化过程的关键,因为梯度...

    Java翻牌小游戏.zip

    4. **数组和集合**:在存储和管理游戏元素时,如翻牌、分数、时间等,开发者可能会用到数组或集合框架(ArrayList、LinkedList等)。 5. **算法设计**:翻牌游戏可能涉及到匹配算法,比如如何比较翻开的两张牌是否...

    java 抽奖系统jar 完整版

    2. **数据结构与集合**:参与者名单通常存储在集合如ArrayList或HashSet中,便于添加、删除和遍历操作。此外,为了防止重复中奖,可能需要使用Set来排除已中奖的号码。 3. **多线程**:在大型活动中,为了保证用户...

    Android高级应用源码-折线统计图.zip

    例如,每个点的坐标值可能存储在`ArrayList`中,然后在`onDraw()`中遍历这些点并连接它们来形成折线。 为了实现交互性,你可能还需要添加触摸事件监听。通过重写`onTouchEvent()`方法,你可以检测用户的触摸动作,...

    JAVA语言写的仿windows纸牌

    "MainFrame类包含Main方法"这一点提示我们,MainFrame是程序的入口点,通常在Java应用程序中,`public static void main(String[] args)`方法是程序启动的地方。MainFrame可能是继承自javax.swing.JFrame的一个类,...

    Java中国象棋

    为了高效地存储和操作棋盘状态,开发者可能使用了二维数组或ArrayList等数据结构。棋子的位置可以通过坐标表示,用数组索引来定位。在判断棋子的移动合法性时,可能涉及到了深度优先搜索(DFS)、广度优先搜索(BFS...

    tp java.rar_TP

    描述中的"many practical works in java"进一步确认了这一点,说明这是一个专注于Java语言的实践性学习资料。 在Java编程领域,有若干关键知识点可以深入探讨: 1. **基础语法**:包括变量、数据类型、运算符、...

    java-sample-3_java_

    描述中的"java sample code files"进一步确认了这一点,这可能是一个学习Java编程或者理解特定Java技术的好资源。 在Java编程中,我们通常会遇到以下几个核心知识点: 1. **基础语法**:包括变量声明、数据类型...

    SplashMod:将随机启动消息添加到启动日志

    SplashMod正是瞄准了这一点,通过引入随机启动消息,使得启动日志在保持其功能的同时,也增添了娱乐性。 SplashMod的实现主要依赖于Java语言。Java作为一种广泛使用的面向对象编程语言,拥有跨平台的优势,这使得...

    java基础.zip

    以上只是对Java基础知识的简单概述,每一点都可以深入研究,例如深入理解内存模型、垃圾回收机制、反射机制、设计模式等。学习Java不仅仅是掌握语法,更重要的是理解其背后的编程思想,培养解决问题的能力。希望这九...

    模拟银行ATM 源代码

    8. **类库和API的使用**:Java标准库中的一些类,如`ArrayList`、`HashMap`等,可能会被用来组织和管理账户、用户和交易数据。 9. **用户界面(UI)设计**:尽管没有具体描述,但一个完整的ATM系统可能还需要一个...

    java坦克大战源代码

    2. **研究关键类**:深入研究坦克、子弹、地图等关键实体类,了解它们的状态管理和行为。 3. **查看事件处理**:查看键盘和鼠标事件的处理,理解用户输入如何转化为游戏动作。 4. **理解游戏逻辑**:分析游戏循环、...

    untitled11_java_

    标签"java"进一步确认了这一点。考虑到压缩包内只有一个名为"untitled11"的文件,这可能是一个包含Java源代码的文件,例如一个类或者一个简单的项目。 在Java编程中,学习和理解基本概念至关重要。Java是一种面向...

    crmeb-java-master.zip

    在深入探讨之前,我们需要明确一点:Java是一种广泛使用的面向对象的编程语言,以其跨平台、高性能和丰富的库而闻名。 在"java学习"这个描述中,我们可以理解为这个压缩包是用于教育或自我学习的目的,它可能包含了...

    VisualBasic学习案例

    总之,通过深入研究这个“VisualBasic学习案例”,你可以逐步构建起对VB.NET的全面认识,从简单的控制台应用到复杂的Windows Forms或WPF项目,都能游刃有余。实践是检验真理的唯一标准,所以动手编写代码、运行示例...

Global site tag (gtag.js) - Google Analytics