拾光

人生如梦,人生如茶。。。

导航

  • 首页
  • 分类
    • 闲言碎语
    • 聆听
    • 软件分享
    • 亿次元&COS
    • 精品文摘
    • 说一说
    • 相册
  • 页面
    • 听听
    • 朋友圈
    • 留言
    • 友链
  • 朋友圈
  • 友链
  • 登录

List子接口

admin 2022年 01月 22 日

阅读选项

简介

特点: 有序, 有下标, 元素可以重复

常用方法

boolean add(E e) 将指定的元素追加到此列表的末尾(可选操作)。
void add(int index, E element) 将指定的元素插入此列表中的指定位置(可选操作)。
boolean addAll(Collection c) 按指定集合的迭代器(可选操作)返回的顺序将指定集合中的所有元素附加到此列表的末尾。
boolean addAll(int index, Collection c) 将指定集合中的所有元素插入到此列表中的指定位置(可选操作)。
void clear() 从此列表中删除所有元素(可选操作)。
boolean contains(Object o) 如果此列表包含指定的元素,则返回 true 。
boolean containsAll(Collection c) 如果此列表包含指定 集合的所有元素,则返回true。
boolean equals(Object o) 将指定的对象与此列表进行比较以获得相等性。
E get(int index) 返回此列表中指定位置的元素。
int hashCode() 返回此列表的哈希码值。
int indexOf(Object o) 返回此列表中指定元素的第一次出现的索引,如果此列表不包含元素,则返回-1。
boolean isEmpty() 如果此列表不包含元素,则返回 true 。
Iterator iterator() 以正确的顺序返回该列表中的元素的迭代器。
int lastIndexOf(Object o) 返回此列表中指定元素的最后一次出现的索引,如果此列表不包含元素,则返回-1。
ListIterator listIterator() 返回列表中的列表迭代器(按适当的顺序)。
ListIterator listIterator(int index) 从列表中的指定位置开始,返回列表中的元素(按正确顺序)的列表迭代器。
E remove(int index) 删除该列表中指定位置的元素(可选操作)。
boolean remove(Object o) 从列表中删除指定元素的第一个出现(如果存在)(可选操作)。
boolean removeAll(Collection c) 从此列表中删除包含在指定集合中的所有元素(可选操作)。
default void replaceAll(UnaryOperator operator) 将该列表的每个元素替换为将该运算符应用于该元素的结果。
boolean retainAll(Collection c) 仅保留此列表中包含在指定集合中的元素(可选操作)。
E set(int index, E element) 用指定的元素(可选操作)替换此列表中指定位置的元素。
int size() 返回此列表中的元素数。
default void sort(Comparator c) 使用随附的 Comparator排序此列表来比较元素。
default Spliterator spliterator() 在此列表中的元素上创建一个Spliterator 。
List subList(int fromIndex, int toIndex) 返回此列表中指定的 fromIndex (含)和 toIndex之间的视图。
Object[] toArray() 以正确的顺序(从第一个到最后一个元素)返回一个包含此列表中所有元素的数组。
T[] toArray(T[] a) 以正确的顺序返回一个包含此列表中所有元素的数组(从第一个到最后一个元素); 返回的数组的运行时类型是指定数组的运行时类型。

ListItertor 的一些方法

Modifier and Type Method and Description
void add(E e) 将指定的元素插入列表(可选操作)。
boolean hasNext() 返回 true如果遍历正向列表,列表迭代器有多个元素。
boolean hasPrevious() 返回 true如果遍历反向列表,列表迭代器有多个元素。
E next() 返回列表中的下一个元素,并且前进光标位置。
int nextIndex() 返回随后调用 next()返回的元素的索引。
E previous() 返回列表中的上一个元素,并向后移动光标位置。
int previousIndex() 返回由后续调用 previous()返回的元素的索引。
void remove() 从列表中删除由 next()或 previous()返回的最后一个元素(可选操作)。
void set(E e) 用 指定的元素替换由 next()或 previous()返回的最后一个元素(可选操作)。

方法演示

引用类型的 List

package 集合;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator; public class ListDemo {
public static void main(String[] args) {
List list = new ArrayList();
//增加
list.add("苹果");
list.add("小米");
list.add("华为");
list.add(1, "三星");
System.out.println(list);
//包含
System.out.println(list.contains("华为"));
System.out.println(list.contains("vivo"));
//获取指定元素和元素位置
System.out.println(list.get(1));
System.out.println(list.indexOf("华为"));
System.out.println(list.indexOf("vivo")); //若此元素不存在则返回-1
System.out.println(list.isEmpty());
//for遍历
System.out.println("-------for循环遍历--------");
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
//增强for
System.out.println("-----增强for-------");
for (Object object : list) {
System.out.println(object);
}
//普通迭代器
System.out.println("-------Itertor迭代---------");
Iterator its = list.iterator();
while(its.hasNext()) {
System.out.println(its.next());
}
//列表迭代器
System.out.println("------ListItertor顺序迭代");
ListIterator Lit = list.listIterator();
while(Lit.hasNext()) {
System.out.println(Lit.nextIndex() + ":" + Lit.next());
}
Lit.set("Vivo");
//注:ListItertor有指针,随next()或者previous而变化,因此若想要逆序遍历需首先顺序遍历
System.out.println("-------LIstItertor倒序遍历----------");
while(Lit.hasPrevious()) {
System.out.println(Lit.previousIndex() + ":" + Lit.previous());
}
//子集合的创建
List li = list.subList(1, 3);
System.out.println(li);
//删除元素
System.out.println("删除元素");
list.remove(0);
System.out.println(list);
list.remove("小米");
System.out.println(list);
}
}

基本类型的 List

注意:所有的集合只能存放引用类型的数据,对于基本类型需要装箱操作

package 集合;

import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator; public class NumList {
public static void main(String[] args) {
List list = new ArrayList();
list.add(10);
list.add(20);
list.add(30);
list.add(40);
System.out.println(list);
//元素的获取
System.out.println(list.get(1));
//元素的遍历
System.out.println("---------元素的遍历---------");
ListIterator it = list.listIterator();
while(it.hasNext()) {
System.out.println(it.next());
}
//返回元素的位置
System.out.println("-----返回元素位置------");
System.out.println(list.indexOf(10));
//删除指定元素,和引用类型的删除不同
System.out.println(list);
// list.remove(10); //错误做法
list.remove(new Integer(10));
System.out.println(list);
}
}

List的实现类

ArrayList

  1. 数组结构实现,查询快,增删慢
  2. 运行效率高,线程不安全

LinkedList

  1. 链表结构实现,查询慢,增删快

Vector

  1. 数组结构实现,查询快,增删慢
  2. 运行效率低,线程安全

List子接口的

List子接口
admin 2022-01-22 软件分享

那年今日
01月
22日
  • 2022年01月22日眼睛为他下着雨,心却为他打着伞,这就是恋爱
  • 2022年01月22日一生里途经的人虽多,但有些人是一阵子,有些人是一辈子
  • 2022年01月22日品味女人:女人兴趣女人味
  • 2022年01月22日逝去的器械,最好不见,最好不念
  • 2022年01月22日关于男子:成熟男子绝对不会做的事
Collection的使用 HashSet 实现类

微信分享二维码

赞 (0)
打赏
微信打赏
支付宝打赏

猜您想看

早放心语:有时刻,坚持了你最不想干的事情之后,便可获得你最想要的器械

何等风景或何等...
2022年01月22日

typecho 编辑器插件 ueditor

这个编辑器还行...
2021年03月27日

亲情绪悟:怙恃恩,似海深,似山重

怙恃恩,似海深...
2022年01月22日

爱一个人最具体的表现是:接纳、肯定、重视

爱一个人最具体...
2022年01月21日

愿你我此生,相伴到老…

图文 | 网络...
2022年01月23日

名人语录大全:我们始终都在演习微笑,终于酿成不敢哭的人

1、刘心武说:...
2022年01月23日

评论区(暂无评论)

这里空空如也,快来评论吧~

取消回复

我要评论

拾光
如果你错过五点的日出,也许你可以等待六点的夕阳!
99+
文章
99+
评论
7
分类
4
页面
文章分类
  • 闲言碎语 (582)
  • 聆听 (1324)
  • 软件分享 (1048)
  • 亿次元&COS (200)
  • 精品文摘 (4544)
  • 说一说 (119)
  • 相册 (9)
最近文章
  • 一个人的冬 (你出现又离开) - 田园
    2025/05/02 · 暂无评论
  • 连吃醋都要把握分寸 - 田园
    2025/05/02 · 暂无评论
  • 爱过爱错 - 周文凯
    2025/05/02 · 暂无评论
  • 追求 - 卓依婷
    2025/04/21 · 暂无评论
  • 哎呀呀 - 小爱与花儿乐队
    2025/04/21 · 暂无评论
最新评论
  • 灰常记忆
    你这个主题蛮好看的,可以分享下吗?

    2025-03-27
  • admin
    《骆驼祥子》里有一段话: “这世间的真话…

    2024-09-23
  • admin
    谢谢提醒 还记得是2023

    2024-01-24
  • 幻焕
    hey 已经是2024年啦

    2024-01-19
  • admin
    div.s…

    2024-01-16
文章标签
  • 歌曲
  • 一言
  • 原文
  • 分享
  • 照片
  • 二次元
  • typecho
  • 小姐姐
  • 软件
  • 插件
  • wordpress升级
  • 美女
  • wordpress技巧
  • 情感
  • 房子
  • 建筑
  • 别墅
  • WordPress插件
  • Wordpress
  • 视频
友情链接:
拾光
规则之树
幻焕博客
旧时光

© 2025 拾光
Powered by Typecho & BearSimple
湘ICP备18006110号
× 微信二维码

微信扫码联系我

× QQ二维码

QQ扫码联系我