zoukankan      html  css  js  c++  java
  • 大数据之路week01--自学之集合_2(List)

    在学习过了Collection之后,接下来我们将去学习List,

    先看API文档:

    List集合的特有功能:(没有列出Collection也有的功能)

    A:添加功能 

    add(int index, E element)

    将指定的元素插入此列表中的指定位置(可选操作)。 

    B:获取功能 

    get(int index)

    返回此列表中指定位置的元素。 

    C:列表迭代器功能 (后面单独说)

    listIterator(int index)

    从列表中的指定位置开始,返回列表中的元素(按正确顺序)的列表迭代器。 

    D:删除功能 

    remove(int index)

    删除该列表中指定位置的元素(可选操作)。 

    E:修改功能 

    set(int index, E element)

    用指定的元素(可选操作)替换此列表中指定位置的元素。 
     
    代码演示如下:
     1 package com.wyh.Iterator;
     2 
     3 import java.util.ArrayList;
     4 import java.util.Iterator;
     5 import java.util.List;
     6 
     7 /** 
     8 * @author WYH
     9 * @version 2019年11月9日 下午4:39:09
    10 * 
    11 * List:
    12 * 有序集合(也称为序列(“存储与取出的顺序一致”) )。 该界面的用户可以精确控制列表中每个元素的插入位置。 用户可以通过整数索引(列表中的位置)访问元素,并搜索列表中的元素。 
    13 * 与集合不同,列表通常允许重复的元素。
    14 * 更正式地,列表通常允许元素e1和e2成对使得e1.equals(e2) ,并且如果它们允许空元素,它们通常允许多个空元素。 
    15 * 有人可能希望实现一个禁止重复的列表,当用户尝试插入时会抛出运行时异常,但是我们预计这种使用是罕见的。 
    16 */
    17 public class ListDemo1 {
    18     
    19         static void show(List list) {
    20         Iterator it = list.iterator();
    21         while(it.hasNext()) {
    22             String s = (String)it.next();
    23             System.out.println(s);
    24         }
    25     }
    26     
    27     public static void main(String[] args) {
    28         //创建List集合
    29         List l1 = new ArrayList();
    30         
    31         //创建字符串对象并进行添加
    32         l1.add("a");
    33         l1.add("b");
    34         
    35         System.out.println("add(int index, E element):**********************************");
    36         
    37         //add(int index, E element):将指定的元素插入此列表中的指定位置(可选操作)下标从0开始
    38         l1.add(1,"xiaowang");//没有问题
    39         //l1.add(11,"li");//IndexOutOfBoundsException 报错,下表越界!
    40         l1.add(3,"xiaoli");//在集合界后面一个可以添加
    41         //l1.add(5,"asd"); //IndexOutOfBoundsException 报错,下表越界!
    42         show(l1);
    43         
    44         System.out.println("获取功能 Object get(int index) :******************************");
    45         
    46         //B:获取功能 get(int index) 返回此列表中指定位置的元素。
    47         System.out.println("get:"+l1.get(2));
    48         //IndexOutOfBoundsException 报错,下表越界!
    49         //System.out.println("get:"+l1.get(11));
    50         
    51         System.out.println(" Object remove(int index)删除该列表中指定位置的元素(可选操作)。****");
    52         //remove(int index) 删除该列表中指定位置的元素(可选操作)。 
    53         System.out.println("remove:"+l1.remove(1)); //返回移除的元素
    54         show(l1);
    55         //System.out.println("remove:"+l1.remove(11)); //IndexOutOfBoundsException 报错,下表越界!
    56         
    57         System.out.println("Object set(int index, E element) 用指定的元素(可选操作)替换此列表中指定位置的元素。 ****");
    58         System.out.println("set:"+l1.set(1, "xiaowangya")); //返回被修改的元素
    59         show(l1);
    60 
    61 
    62         
    63     }
    64 }

    List集合的特有遍历功能:size()和get()方法结合使用:

    1 //List集合特有的遍历方式
    2         for(int i = 0;i<l1.size();i++) {
    3             String s = (String)l1.get(i);
    4             System.out.println(s);
    5         }

    List是Collection的子接口,当然它也可以用Iterator迭代器进行遍历输出:

    1 Iterator it = list.iterator();
    2         while(it.hasNext()) {
    3             String s = (String)it.next();
    4             System.out.println(s);
    5         }
  • 相关阅读:
    Delphi 与 C/C++ 数据类型对照表(最新的tokyo)
    Delphi新语法 For ..In
    NSwag生成客户端调用代码
    微服务
    springcloud
    NET高性能IO
    秒杀场景
    CPU开销sql server 性能调优
    WinDbg调试分析 net站点 CPU100%问题
    全链路实践Spring Cloud 微服务架构
  • 原文地址:https://www.cnblogs.com/wyh-study/p/11827831.html
Copyright © 2011-2022 走看看