Chapter 8、集合类--- List集合、迭代器(9th,Mar.)

package org.hanqi.array;
import java.util.*;
public class Text1 {
    public static void main(String[] args) {

        // 创建List:指明数据类型,不需要指定大小
        // <>表示泛型
        List<String>list=new ArrayList<String>();

        List<Object>list1=new ArrayList<Object>();

        list1.add(1);
        list.add("");

        //添加
        list.add("a");
        list.add("b");
        list.add("c");

        //长度
        System.out.println("List长度:"+list.size());

        //取出
        System.out.println("按索引0取出get(0):"+list.get(2));
        

        //遍历
        System.out.print("遍历方式1:");
        for(int i=0;i<list.size();i++)
        {
            System.out.println(list.get(i));
        }

        System.out.print("遍历方式2:");
        for(String s:list)
        {
            System.out.println(s);
        }

        System.out.print("遍历方式3(迭代器):");
        //获取集合的迭代器,迭代器一开始是在集合的最上面
        Iterator<String> it=list.iterator();
        //试探
        while(it.hasNext())
        {
            String t=it.next();
            if(t.equals("b"))
            {
                it.remove();
            }
            System.out.println(t);
        }
        

        //插入
        list.add(0,"A");
        for(String s:list)
        {
            System.out.println(s);
        }
        System.out.println("-------------------");

        //修改
        list.set(1, "B");
        list.set(2, "C");
        for(String s:list)
        {
            System.out.println(s);
        }
        System.out.println("-------------------");

        //获取索引值
        System.out.println("B的索引值为:"+list.indexOf("B"));
        System.out.println("-------------------");

        //部分移除
        list.remove(0);
        for(String s:list)
        {
            System.out.println(s);
        }
        System.out.println("List的长度:"+list.size());

        //全部移除
        list.clear();
        System.out.println("List的长度:"+list.size());

    }

}

时间: 2024-11-03 05:22:42

Chapter 8、集合类--- List集合、迭代器(9th,Mar.)的相关文章

上手并过渡到PHP7(5)——轻量级“集合”迭代器-Generator

轻量级“集合”迭代器-Generator泊学视频链接泊阅文档链接Generator是PHP 5.5加入的新语言特性.但是,它似乎并没有被很多PHP开发者广泛采用.因此,在我们了解PHP 7对Generator的改进之前,我们先通过一个简单却显而易见的例子来了解下Generator究竟为我们解决什么问题. 一千万个整数的数组 如果我们要“创建一个指定元素个数的数组”,怎么做呢?我们可能会不加思索的写下下面的代码: function makeRange($range) { $data = []; f

【JAVA集合】集合迭代器快速失败行为及CopyOnWriteArrayList

以下内容基于jdk1.7.0_79源码: 什么是集合迭代器快速失败行为 以ArrayList为例,在多线程并发情况下,如果有一个线程在修改ArrayList集合的结构(插入.移除...),而另一个线程正在用迭代器遍历读取集合中的元素,此时将抛出ConcurrentModificationException异常导致迭代遍历失败: ArrayList.Itr迭代器快速失败源码及例子 查看ArrayList的Itr迭代器源码,可以看到Itr为ArrayList的私有内部类,有一个expectedMod

轻量级“集合”迭代器-Generator

Generator是PHP 5.5加入的新语言特性.但是,它似乎并没有被很多PHP开发者广泛采用.因此,在我们了解PHP 7对Generator的改进之前,我们先通过一个简单却显而易见的例子来了解下Generator究竟为我们解决什么问题. 一千万个整数的数组 如果我们要"创建一个指定元素个数的数组",怎么做呢?我们可能会不加思索的写下下面的代码: function makeRange($range) { $data = []; for ($i = 0; $i < $range;

java基础知识回顾之java集合类-Properties集合

/** java.lang.Object   |--java.util.Dictionary<K,V>      |--java.util.Hashtable<Object,Object>          |--java.util.Properties * @author Administrator *Properties集合:         * 特点:         * 1,该集合中的键和值都是字符串类型.         * 2,集合中的数据可以保存到流中,或者从流加载 

初识java集合——迭代器

* Collection接口中有2个基本的方法 * add和iterator * * add(E e)是用于向集合中添加元素,如果添加元素成功,则返回true, 反之为false(例如向集里面添加,因为集是不允许重复的) * * Iterable接口只包含了一个方法 * Iterator<E> iterator(); * 编译器将foreach循环翻译为带有迭代器的循环 * foreach可以与任何实现了Iterable接口的对象一起工作 * Collection接口扩展了Iterable接口

c#中常用集合类和集合接口之集合类系列【转】

常用集合接口系列:http://www.cnblogs.com/fengxiaojiu/p/7997704.html 常用集合类系列:http://www.cnblogs.com/fengxiaojiu/p/7997541.html 常用集合类: 数组(Array)的不足(即:集合与数组的区别) 1. 数组是固定大小的,不能伸缩.虽然System.Array.Resize这个泛型方法可以重置数组大小,但是该方法是重新创建新设置大小的数组,用的是旧数组的元素初始化.随后以前的数组就废弃!而集合却是

第1章 集合&amp;迭代器

1.1 集合体系结构1.1.1 集合体系图在最顶层的父接口Collection中一定定义了所有子类集合的共同属性和方法,因此我们首先需要学习Collection中共性方法,然后再去针对每个子类集合学习它的特有方法 1.1.2 案例代码一: package com.itheima_01; import java.util.ArrayList; /* * ArrayList * 集合的体系结构: * 由于不同的数据结构(数据的组织,存储方式),所以Java为我们提供了不同的集合, * 但是不同的集合

java集合类中的迭代器模式

不说模式的问题,看一个<<设计模式之禅>>里面的例子. 老板要看到公司了各个项目的情况.(我知道我这个概述很让人头大,看代码吧) 示例程序 v1 package Iterator; /** * @author cbf4Life [email protected] * 定义一个接口,所有的项目都是一个接口 */ public interface IProject { //从老板这里看到的就是项目信息 public String getProjectInfo(); } package

[javaSE] 集合框架(迭代器)

当我们创建一个集合以后,可以直接使用system.out.println()来打印这个集合,但是,我们需要可以对每个元素进行操作,所以,这里需要使用迭代器来遍历集合 迭代器其实就是集合取出元素的方式 调用List对象的iterator()方法,得到Iterator对象,这个类是个接口类型,因此可以知道返回的是Iterator接口的子对象 while()循环,条件是,List对象的hasNext()方法,返回布尔值不为false 循环里面调用List对象的next()方法,可以得到每一个元素 im