欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

List集合和Set集合

程序员文章站 2022-03-03 08:52:59
...

List集合

1、List集合特点

A、有序(存储的顺序和取出的顺序是一致的)

B、有重复(存放的数据可以是重复的)

C、有索引(存放的元素有索引,可以通过索引操作元素)

2、List集合的特有功能

A、增  void add(int index,E e) //添加元素到指定位置

B、删  E remove(int index) //删除指定位置的元素,并且将该元素返回

C、改  E set(int index,E e) //修改指定位置的元素,并且将原始元素返回

D、查  E get(int index) //获取指定索引位置的元素

LinkedList(操作头和尾的方法)

LinkedList是List的子类,List中的方法LinkedList都可以使用

A、增

public void addFirst(E e)   //将指定元素添加到列表的开头
public void addLast(E e)    //将指定元素添加到列表的结尾

B、删

public E removeFirst()      //移除并且返回此列表的第一个元素
public E removeLast()       //移除并且返回此列表的最后一个元素

C、查

public E getFirst()         //返回此列表的第一个元素
public E getLast()          //返回此列表的最后一个元素

D、其他

public E pop()              //从此列表所表示的堆栈当中弹出一个元素
public void push(E e)       //将元素推入此列表所表示的堆栈
public boolean isEmpty()    //如果列表不包含任何元素,则返回true   

Set集合

1、Set集合特点

A、无序(存储的顺序和取出的顺序可能不是一致的)

B、无重复(存放的数据可以是无重复的,可以用来去重)

C、无索引(没有索引,无法通过索引获取元素值)

2、Set集合的体系

A、子类 HashSet 无序、无重复

B、子类 LinkedHashSet 有序、无重复

3、可变参数

A、可变参数基本格式:
        a.定义格式
            修饰符  返回值类型  方法名称(数据类型... 参数名){
                方法体;
                return 返回值;
            }
        b.使用格式
            数据类型 返回值 = 方法名称(参数1,参数2,参数3,参数4);

B、可变参数注意:
        可变参数只能使用在参数列表的最后

Collections工具类

1、常用的方法

public static <T> boolean addAll(Collection<T> c,T... elements) //往集合当中添加元素

public static void shuffle (List<?> list) //随机置换 打乱集合的顺序

public static <T> void sort(List<T> list) //将集合中元素按照默认规则排序

public static <T> void sort(List<T> list,Comparator<? super T> comparator) //将集合元素按照指定规则排序

2、两种比较器

A、内比较器 Comparable 采用实现接口去实现【固定】
        当前的类去实现 Comparable<T> 接口,添加未实现的方法

B、外比较器 Comparator 采用匿名内部类实现【灵活】
        Collections.sort(list, new Comparator<T>(){ ... });  

C、升序和降序操作
        升序: 当前在前升 (当前 - 传入) o1.compareTo(o2)
        降序: 当前在后降 (传入 - 当前) o2.compareTo(o1)

数据结构

1、常见的数据结构

A、栈(先进后出)

B、队列(先进先出)

C、数组(查找快、增删慢)

D、链表(查找慢、增删快)![数组](C:\Users\handsomeman\Desktop\数组.PNG)

E、红黑树(二叉树、提升搜索效率)