java list

1,首先,是一个接口,一个泛型接口。
一种有序集合,和set不同,允许元素重复(甚至允许空值)
2,继承关系:继承自 Collection 接口
3,方法:
1)int size();
返回这个list中元素的数量。如果数量大于 Integer.MAX_VALUE
则返回 Integer.MAX_VALUE

//十进制:2147483647
@Native public static final int MAX_VALUE = 0x7fffffff;

2) boolean isEmpty();
返回true,如果list中没有元素
3)boolean contains(Object o);
返回true,如果list中包含某特定元素(当且尽当list含有至少一个元素时)
4) Iterator iterator();
以正确的顺序返回此列表中元素的迭代器。
5) Object[] toArray();
返回一个正确顺序(从第一个到最后一个)的数组,包含这个list中所有的元素。
6) T[] toArray(T[] a);
返回一个数组,该数组按正确的顺序(从第一个元素到最后一个元素)包含此列表中的所有元素,返回数组的运行时类型是指定数组的运行时类型
7) boolean add(E e);
将指定的元素追加到此列表的末尾(可选操作)。
返回true,添加成功。
8) boolean remove(Object o);
去掉list中指定元素的第一个匹配项(如果元素不存在,则list不改变)
返回true,如果移除成功(不存在时,返回false)
9) boolean containsAll(Collection<?> c);
如果此列表包含指定集合的所有元素,则返回 true
10)boolean addAll(Collection<? extends E> c);
将指定集合中的所有元素插入此列表的最后的位置之后。将当前位于该位置的元素(如果有)和任何后续元素向右移动(增加其索引)。新元素将按指定集合的迭代器返回它们的顺序出现在此列表中。如果在操作进行时修改了指定的集合,则此操作的行为未定义。(请注意,如果指定的集合是此列表,并且不是空的,则会发生这种情况。)
返回true,如果插入成功。
11) boolean addAll(int index, Collection<? extends E> c);
同上 将指定集合中的所有元素插入此列表的指定位置
返回true,如果插入成功
12)boolean removeAll(Collection<?> c);
从该列表中删除指定集合中包含的所有元素(可选操作)。
成功返回true。list中不含有需要移除的元素(一个都没有),返回false
13)boolean retainAll(Collection<?> c);
仅保留此列表中包含在指定集合中的元素(可选操作)。换句话说,从该列表中删除指定集合中未包含的所有元素。
成功返回ture
14)

	default void replaceAll(UnaryOperator<E> operator) {
        Objects.requireNonNull(operator);
        final ListIterator<E> li = this.listIterator();
        while (li.hasNext()) {
            li.set(operator.apply(li.next()));
        }
    }

将此列表中的每个元素替换为对该元素应用运算符的结果。运算符引发的错误或运行时异常将中继到调用方。
UnaryOperator operator: 具体的运算方法
15)

 default void sort(Comparator<? super E> c) {
        Object[] a = this.toArray();
        Arrays.sort(a, (Comparator) c);
        ListIterator<E> i = this.listIterator();
        for (Object e : a) {
            i.next();
            i.set((E) e);
        }
    }

按照指定的顺序排序
Comparator<? super E> c :具体的运算方法
16) void clear();
去掉list中所有的元素
17)boolean equals(Object o);
比较列表,当且仅当被比较的也是列表,且元素相同,顺序相同时返回true
18) int hashCode();
返回这个list的hashcode
19)E get(int index);
返回相应位置的元素
20) E set(int index, E element);
在相应位置设置替代元素,返回上次这个位置的元素
21)void add(int index, E element);
在相应位置添加元素(插入操作,后面的元素的位置都会往后+1)
22)E remove(int index);
去除相应位置的元素;返回之前该位置的元素。
23)int indexOf(Object o);
返回list中第一个符合的元素的位置;找不到返回-1
24)int lastIndexOf(Object o);
返回list中最后一个符合的元素的位置;找不到返回-1
25) ListIterator listIterator();
返回这个list的迭代器,按照正常顺序
26) ListIterator listIterator(int index);
返回这个list的迭代器,按正常顺序。开始位置为传入参数
27) List subList(int fromIndex, int toIndex);
返回一个list 是之前list的from -> to 。
如果使用 list.subList(from, to).clear(); 则之前的list就会去掉from->to位置的元素
28)

@Override
    default Spliterator<E> spliterator() {
        return Spliterators.spliterator(this, Spliterator.ORDERED);
    }

返回一个Spliterator;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值