zoukankan      html  css  js  c++  java
  • 4.21JavaList容器

    4.21JavaList容器

    List容器特点

    • 有序:

      • List中每个元素都有索引标记,可以根据元素的索引标记(在List中的位置)访问元素,从而精确控制这些元素

      • 和数组一样有索引下标

      • List的底层实现就是数组

    • 可重复:

      • List允许加入重复的元素,List允许满足e1.equals(e2)的元素重复加入元素---对象地址相同或者是值相同

      • 因为List的底层是数组,所以添加重复的元素在List中的所有地址不一样,所以可以添加重复元素

    List接口常用的实现类

    ArrayList---底层实现是数组
    LinkedList---底层使用的是链表
    Vector---底层也是数组,但是是线程安全

    实例:

    public class TestList{
    public static void main(String[] args){
    test03;
    }
       
           /*测试和索引相关的方法*/
       public static void test03(){

           /*定义一个自己的List,加泛型*/
           List<String> list = new ArrayList<>();
           list.add("A");
           list.add("B");
           list.add("C");
           list.add("D");
           /*
           在List源码中有两个add方法
           1.传参数和值---插入元素
           2.传索引和值---在指定索引处插入元素---链表
            */

           System.out.println(list);

           /*插入元素*/
           list.add(2,"Lucifer");
           System.out.println(list);
           /*
           特点:
           1.只插入元素,List后面的元素往后移
           2.相当于打断了链表然后重写连接,不删除任何元素
           用于数据库的增删改查的增
            */

           /*移除元素*/
           list.remove(2);
           System.out.println(list);
           /*
           插入的元素被移除出List
            */

           /*set方法*/
           list.set(2,"JunkingBoy");
           System.out.println(list);
           /*
           直接将传入的索引位置处的值改成后续传入的值
            */

           /*get方法*/
           System.out.println(list.get(2));
           /*
           直接返回List中2号索引位置处的值
            */
           
                   list.add("C");
           list.add("B");
           list.add("A");
           System.out.println(list);

           System.out.println(list.indexOf("B")); //里面有两个B,返回的是第一个出现的B的索引下标
           /*
           如果字符不存在返回-1
            */

           System.out.println(list.lastIndexOf("B"));
           
      }
       
    }

     

     

     

    It's a lonely road!!!
  • 相关阅读:
    pyqt5开发之俄罗斯方块
    Tkenter之API测试系统界面设计
    Python的标准GUI:Tkinter的组件
    Python单元测试框架——unittest
    【Android】自定义ListView的Adapter报空指针异常解决方法
    5、使用Libgdx设计一个简单的游戏------雨滴
    4.6、Libgdx线程介绍
    4.5、Libgdx运行日志管理
    4.4、Libgdx使用方法查询运行环境相关属性
    4.3、Libgdx启动类和配置
  • 原文地址:https://www.cnblogs.com/JunkingBoy/p/14686564.html
Copyright © 2011-2022 走看看