zoukankan      html  css  js  c++  java
  • JDK源码阅读-------自学笔记(二十)(java.util.List初探)

    List简介

    • List是有序、可重复的容器。
      有序:List中每个元素都有索引标记。可以根据元素的索引标记(在List中的位置)访问元素,从而精确控制这些元素。
      可重复:List允许加入重复的元素。更确切地讲,List通常允许满足 e1.equals(e2) 的元素重复加入容器。
    • 除了Collection接口中的方法,List多了一些跟顺序(索引)有关的方法.
    • List接口常用的实现类有3个:ArrayList、LinkedList和Vector.

    初始化List

    1 List<String> list = new ArrayList<>();
    View Code

    List接口中定义的方法

    • void add(int index, E element); 在指定位置插入元素,以前元素全部后移一位

      实例:

      一般add()添加元素
      1     list.add("A"); 
      2     list.add("B"); 
      3     list.add("D");
      4     list.add("E");
      View Code

           List的add添加

    1     list.add(2, "C");
    View Code
    • E set(int index, E element); 修改指定位置的元素
      实例:
      1     list.set(4,"H");
      2     System.out.println(list);
      View Code
    • E get(int index); 返回指定位置的元素
      1     System.out.println(“输出元素:”+list.get(1));
      View Code
    • E remove(int index); 删除指定位置的元素,后面元素全部前移一位
      实例:
      1      list.remove(2);
      2     System.out.println(list);
      View Code
    • int indexOf(Object o);返回第一个匹配元素的索引,如果没有该元素,返回-1
      实战:
      1     // 从头到尾找到第一个"H" 
      2     System.out.println(list.indexOf("H"));
      View Code
    • int lastIndexOf(Object o);返回最后一个匹配元素的索引,如果没有该元素,返回-1
      实战:
      1     // 从尾到头找到第一个"H" 
      2     System.out.println(list.lastIndexOf("H"));
      View Code

    List并集和交集处理

    • 创建实例的集合
      1     List<String> list1 = new ArrayList<String>();
      2     list1.add("张三");
      3     list1.add("李四");
      4     list1.add("王五");
      5 
      6     List<String> list2 = new ArrayList<String>();
      7     list2.add("张三");
      8     list2.add("赵大");
      9     list2.add("钱二");
      View Code
    • containsAll() 包含
      实例:
      1     //list1是否包含list2中所有元素
      2     System.out.println(list1.containsAll(list2));
      View Code
    • addAll() 合并两个集合
      实例:
      1     //将list2中所有元素都添加到list1中
      2     list1.addAll(list2);
      View Code
    • removeAll() 一个集合中去除另一个集合的内容
      实例:
      1     //从list1中删除同时在list和list2中存在的元素
      2     list1.removeAll(list2);
      View Code
    • retainAll() 两个集合取交集
      实例:
      1    //取list1和list2的交集
      2     list1.retainAll(list2);
      View Code

    List常用方法

    • 创建实例的集合
      1     List<String> list = new ArrayList<>();
      View Code
    • boolean isEmpty(); 容器是否为空

    实例:

    1      System.out.println(list.isEmpty());
    View Code
    • boolean add(E e); 增加元素到容器中

    实例:

    1     list.add("张三");
    2     list.add("李四");
    3     System.out.println(list);
    View Code
    • int size(); 容器中元素的数量

    实例:

    1     System.out.println("list的数量大小:" + list.size());
    View Code
    • boolean contains(Object o); 容器中是否包含该元素

    实例:

    1     System.out.println("是否包含指定元素:" + list.contains("张三"));
    View Code
    • boolean remove(Object o); 从容器中移除元素

    实例:

    1      list.remove("李四");
    2     System.out.println(list);
    View Code
    • Object[] toArray();转化成Object数组

    实例:

    1     Object[] objects = list.toArray();
    2 
    3     System.out.println("转化成Object数组:" + Arrays.toString(objects));
    View Code
    • void clear();清楚容器中所有元素

    实例:

    1     list.clear();
    2 
    3     System.out.println("清空所有元素:" + list);
    View Code
  • 相关阅读:
    ASP.NET MVC3实现无刷新验证码
    关闭数据库的xp_cmdshell命令以防止黑客攻击
    C#实现100万条数据导入SQL SERVER数据库仅用4秒 (附源码)
    asp.net防止刷新时重复提交介绍
    SQL Server数据库开发中的十大问题
    C#实现WebQQ密码MD5加密算法
    JavaSE基础篇
    Jekins安装与配置(基于majaro)
    Jochen的golang小抄基础篇章二
    JavaSE之面向对象
  • 原文地址:https://www.cnblogs.com/liuyangfirst/p/12942636.html
Copyright © 2011-2022 走看看