List 接口及其常用方法

这篇具有很好参考价值的文章主要介绍了List 接口及其常用方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

List 接口基本介绍

List接口是Collection接口的子接口,其主要特点如下:

  1. List中元素有序,是按照元素的插入顺序进行排序的。每个元素都有一个与之关联的整数型索引(索引从 0 开始),可以根据索引来访问和操作元素,可以使用普通 for 循环遍历。
  2. List中可以包含重复的元素。
public class ListTest() {
  public static void main(String[] args) {
    // List 中元素有序、且可重复
    List list = new ArrayList();
    list.add("Jack");
    list.add("Rose");
    list.add("May");
    list.add("Luck");
    list.add("Jack");
    System.out.println("list = " + list); // list = [Jack, Rose, May, Luck, Jack]

    // List 支持索引
    System.out.println(list.get(2)); // May
  }
}  

List 接口常用方法

下面的代码以其实现类ArrayList演示List接口的常用方法。

public class ListMethod() {
  public static void main(String[] args) {
    List list = new ArrayList();
    // 添加指定元素到列表末尾
    list.add("任盈盈");
    list.add("赵敏");
    System.out.println("list = " + list); // list = [任盈盈, 赵敏]

    // void add(int index, E element)
    // 在此列表的指定位置插入指定的元素。
    // 将当前位于该位置的元素(如果有)以及后续的元素向右移动(索引加一)。
    list.add(1, "周芷若");
    System.out.println("list = " + list); // list = [任盈盈, 周芷若, 赵敏]

    // boolean addAll(int index, Collection<? extends E> c)
    // 将指定集合中的所有元素按指定位置插入到此列表中。
    // 将当前位于该位置的元素(如果有)以及后续的元素向右移动(索引增加)。
    // 新元素将按照指定集合迭代器返回它们的顺序出现在此列表中。
    List list1 = new ArrayList();
    list1.add("风清扬");
    list1.add("任我行");
    list.addAll(2, list1);
    System.out.println("list = " + list); // list = [任盈盈, 周芷若, 风清扬, 任我行, 赵敏]

    // E get(int index):返回此列表中指定位置的元素。
    System.out.println(list.get(1)); // 周芷若

    list.add("风清扬");
    System.out.println("list = " + list); // list = [任盈盈, 周芷若, 风清扬, 任我行, 赵敏, 风清扬]

    // int indexOf(Object o)
    // 返回此列表中指定元素第一次出现的索引,如果列表不包含该元素,则返回 -1。
    System.out.println(list.indexOf("风清扬")); // 2
    // int lastIndexOf(Object o)
    // 返回此列表中指定元素最后一次出现的索引,如果列表不包含该元素,则返回 -1。
    System.out.println(list.lastIndexOf("风清扬"));// 5

    // E remove(int index):移除此列表中指定位置的元素。
    // 将任何后续的元素向左移动(其索引减一)。返回从列表中移除的元素。
    list.remove(0);
    System.out.println("list = " + list); // list = [周芷若, 风清扬, 任我行, 赵敏, 风清扬]

    // boolean remove(Object o):从列表中移除指定元素的第一个匹配项(如果存在)。
    // 如果列表不包含该元素,则列表保持不变。如果列表发生更改,则返回 true。
    list.remove("风清扬");
    System.out.println("list = " + list); // list = [周芷若, 任我行, 赵敏, 风清扬]

    //E set(int index, E element):用指定元素替换列表中指定位置的元素。
    list.set(1, "张无忌");
    System.out.println("list = " + list); // list = [周芷若, 张无忌, 赵敏, 风清扬]

    // List<E> subList(int fromIndex, int toIndex)
    // 返回此列表中从 fromIndex(包括)到 toIndex(不包括)的子集合。
    // 如果 fromIndex 和 toIndex 相等,则返回的列表为空。
    List list2 = list.subList(1, 3);
    System.out.println("list2 = " + list2); // list2 = [张无忌, 赵敏] 
    // 该方法消除了显式的范围操作的需求(这种操作通常用于数组)。
    // 需要对列表的一部分进行的操作都可以通过传递子列表视图而不是把整个列表作为范围,
    // 类似的习惯用法也可以用于 indexOf 和 lastIndexOf 方法。
    // 例如,以下习惯用法从列表中移除了一系列元素:
    System.out.println("list = " + list); // 输出:list = [周芷若, 张无忌, 赵敏, 风清扬]
    list.subList(1, 3).clear();
    System.out.println("list = " + list);// 输出:list = [周芷若, 风清扬]
  }
}

List 接口遍历元素方式

List接口可以使用 Iterator(迭代器)、增强 for 循环和普通 for 循环三种方式来遍历元素,下面的代码以其实现类Vector演示List接口遍历元素的方式。文章来源地址https://www.toymoban.com/news/detail-479228.html

public class ThroughElements() {
  public static void main(String[] args) {
    List list = new Vector();

    list.add("蛋挞");
    list.add("芝士蛋糕");
    list.add("提拉米苏");

    System.out.println("---使用 Iterator---");
    Iterator iterator = list.iterator();
    while (iterator.hasNext()) {
      Object o = iterator.next();
      System.out.println(o);
    }

    System.out.println("---使用增强 for 循环---");
    for (Object o : list) {
      System.out.println(o);
    }

    System.out.println("---使用普通 for 循环---");
    for (int i = 0; i < list.size(); i++) {
      System.out.println(list.get(i));
    }
  }
}

到了这里,关于List 接口及其常用方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C++:stl:list的常用接口及其模拟实现

    本文主要介绍c++:stl中list常用接口的功能及使用方法,比较list与vector的区别,并对list的常用接口进行模拟实现。 目录 一、list的介绍和使用 1.list介绍 2.list使用 1.list的构造 2.list iterator的使用 3.list 容量相关 4.list元素访问 5.list修改 6.list的迭代器失效 二、list的模拟实现 1.l

    2024年02月07日
    浏览(36)
  • 【C++从0到王者】第十四站:list基本使用及其介绍

    如下所示,是库里面对list的基本介绍 链表是序列容器,允许在序列内的任何位置进行常量时间的插入和擦除操作,以及两个方向的迭代。 链表容器被实现为双链表;双链表可以将它们包含的每个元素存储在不同且不相关的存储位置。排序是通过与前面元素的链接和后面元素的

    2024年02月14日
    浏览(36)
  • 容器——2.Collection 子接口之 List

    ArrayList 是 List 的主要实现类,底层使用 Object[ ] 存储,适用于频繁的查找工作,线程不安全 ; Vector 是 List 的古老实现类,底层使用 Object[ ] 存储,线程安全的。 是否保证线程安全: ArrayList 和 LinkedList 都是不同步的,也就是不保证线程安全; 底层数据结构: Arraylist 底层使

    2024年02月14日
    浏览(31)
  • Set 接口及其常用方法

    Set 接口是 Collection 接口的一个子接口,其主要特点如下: 不允许重复元素: Set 接口的实现类不会包含重复的元素。更正式地说,不包含任何一对使得 e1.equals(e2) 成立的元素 e1 和 e2 ,并且最多只能有一个 null 元素。当尝试添加重复元素时,添加操作将被忽略。 无序性: S

    2024年02月08日
    浏览(28)
  • 第12章_集合框架(Collection接口,Iterator接口,List,Set,Map,Collections工具类)

    1.1 生活中的容器 1.2 数组的特点与弊端 一方面,面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象的操作,就要对对象进行存储。 另一方面,使用数组存储对象方面具有 一些弊端 ,而Java 集合就像一种容器,可以 动态地 把多个对象的引用放入容器中。 数

    2024年01月25日
    浏览(32)
  • java集合之List接口实现类常用方法详解

    目录 一、List集合概述 二、ArrayList类 三、ArrayList常用方法实例 四、LinkedList类 五、Linkedist常用方法实例         java.util.List接口继承自Collection接口,是单列集合的一个分支,通常将实现了List接口的对象称为List集合,在List集合中允许出现重复的元素,所有的元素是以一种线

    2024年02月08日
    浏览(42)
  • 【Java 集合框架API接口】Collection,List,Set,Map,Queue,Deque

    博主: _LJaXi Or 東方幻想郷 专栏: Java | 从跨行业到跨平台 开发工具: IntelliJ IDEA 2021.1.3 Java集合API提供了一组功能强大的数据结构和算法, 具有以下作用( 简述 ) 存储和组织数据 提供高效的数据访问和操作 实现算法和数据处理 提供线程安全性 支持泛型编程 java.util.Collection

    2024年02月12日
    浏览(34)
  • Collection接口详细介绍(上)

    前言: 本篇文章主要讲解 Java中的Collection接口以及相关实现类 的知识。该专栏比较适合刚入坑Java的小白以及准备秋招的大佬阅读。 如果文章有什么需要改进的地方欢迎大佬提出,对大佬有帮助希望可以支持下哦~ 小威在此先感谢各位小伙伴儿了😁 以下正文开始 Java中的集合

    2024年02月11日
    浏览(28)
  • Java中创建List接口、ArrayList类和LinkedList类的常用方法(一)

    要了解List接口,就不得不说起Java的集合框架。 (该图来自菜鸟教程) Java 集合框架主要包括两种类型的容器,集合Collection和图Map。 Collection接口代表了 单列集合 ,它包含了一组Object元素,每个元素都有一个值。 (这里有个“泛型擦除”的概念,在此不提及有兴趣可自行了

    2024年01月19日
    浏览(38)
  • Java中List接口两个实现,ArrayList类和LinkedList类的常用方法(一)

    要了解List接口,就不得不说起Java的集合框架。 (该图来自菜鸟教程) Java 集合框架主要包括两种类型的容器,集合Collection和图Map。 Collection接口代表了 单列集合 ,它包含了一组Object元素,每个元素都有一个值。 (这里有个“泛型擦除”的概念,在此不提及有兴趣可自行了

    2024年01月19日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包