二饭 发表于 2020-4-11 14:02

Java(集合③)

本帖最后由 二饭 于 2020-4-11 14:31 编辑

回来把集合基础贴写完。


List集合Java.utli.List接口 extends Collection接口

List接口的特点:
    1、有序的集合,存储的元素和去除的元素顺序是一致的;    2、有索引,包含了一些带有索引的方法;    3、允许存储重复元素;
List接口中带有索引的方法(特有)
void add(int index, E element):在列表的指定位置插入指定元素。
E get(int index):返回列表中指定位置的元素。
E remove(int index):移除列表中指定位置的元素。
E set(int index, E element):用指定元素替换列表中指定位置的元素。

代码:



List<String> list=new ArrayList<>();
      list.add("a");
      list.add("b");
      list.add("c");
      System.out.println(list);
      list.add(2,"x");//在列表的指定位置插入指定元素。
      String s = list.get(2);//返回列表中指定位置的元素
      System.out.println(s);
      String remove = list.remove(3);//移除列表中指定位置的元素
      System.out.println(remove);
      String z = list.set(1, "z");//用指定元素替换列表中指定位置的元素
      System.out.println(z);
      System.out.println(list);
执行结果:

x
c
b

注意:在操作索引的时候,一定要防止索引的异常    ArrayIndexOutOfBoundsException:数组索引越界异常    IndexOutOfBoundsException:索引越界异常,集合

ArrayList集合:存储的结构是数组结构,元素增删慢,查询快一般用于:查询数据,遍历数据

LinkedList集合:数据存储的结构是链表结构,方便元素添加,删除
特点:
1、底层是链表;   
2、里边包含了大量的首尾元素方法;
注意:
    使用LinkedList集合特有方法,不能使用多态;
常用方法:
    void addFirst(E e):将指定元素插入此列表的开头;
    void addLast(E e):将指定元素添加到此列表的结尾;
    E getFirst():返回此列表的第一个元素;
    E getLast():返回此列表的最后一个元素;
    void push(E e):将元素推入此列表所表示的堆栈;
    E removeFirst():移除并返回此列表的第一个元素;
    E removeLast():移除并返回此列表的最后一个元素;
    E pop():从此列表所表示的堆栈处弹出一个元素。

代码:
LinkedList<String> list=new LinkedList<>();
      list.add("a");
      list.add("b");
      list.add("c");
      System.out.println(list);
      list.addFirst("x");//将指定元素插入此列表的开头
      list.addLast("z");//将指定元素添加到此列表的结尾
      System.out.println(list);
      String first = list.getFirst();//返回此列表的第一个元素
      System.out.println(first);
      String last = list.getLast();//返回此列表的最后一个元素
      System.out.println(last);
      list.push("a");//等效与addFirst(E e)
      System.out.println(list);
      String s = list.removeFirst();//移除并返回此列表的第一个元素
      System.out.println(s);
      String s1 = list.removeLast();//移除并返回此列表的最后一个元素
      System.out.println(s1);
      String pop = list.pop();//等效于removeFirst()
      System.out.println(pop);
      System.out.println(list);


emmm,这个编辑器,我头要炸了,格式太难弄了,不太习惯{:1_908:}

KSTG_茶飘香 发表于 2020-4-11 14:36

{:1_921:}{:1_921:}{:1_921:}狠厉还了。我都忘记当时学的什么了。

牛栏山 发表于 2020-4-11 14:42

编辑器我用sublime text

二饭 发表于 2020-4-11 17:43

KSTG_茶飘香 发表于 2020-4-11 14:36
狠厉还了。我都忘记当时学的什么了。

写一写 顺便能回忆一下

drundragon 发表于 2020-7-28 11:15

应该更加深入一点从底层源码说明差异点 这样可能更加立体
页: [1]
查看完整版本: Java(集合③)