List子接口

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

2.方法:包含Collection中的所有方法,还包括自己的独有的方法(API 中查找

还有ListIterator(迭代器),功能更强大。

包含更多的方法:

3.实例代码

java 复制代码
package com.collection;

import javax.jnlp.ClipboardService;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

/**
 * List子接口的使用
 */
public class Demo03 {
    public static void main(String[] args) {
        //集合  <>是泛型
        List li = new ArrayList<>();
        //1添加元素
        li.add("苹果");
        li.add("桃子");
        li.add(0,"香蕉");
        System.out.println("元素个数:"+li.size());
        System.out.println(li);
        //2删除元素
//        li.remove("桃子");
        li.remove(1);  //删除下标为1的元素
        //3遍历
        System.out.println("-------for--------");
        for (int i = 0; i < li.size(); i++) {
            System.out.println(li.get(i));
        }

        System.out.println("-------增强for--------");
        for (Object o : li) {
            System.out.println(o);
        }

        System.out.println("-------迭代器--------");
        Iterator it = li.iterator();
        while (it.hasNext()) {
            System.out.println(it.next());
        }

        //listIterator可以向前向后遍历、删除、添加、修改元素
        System.out.println("-------列表迭代器--------");
        ListIterator listIterator = li.listIterator();
        System.out.println("--------列表迭代器:从前往后--------");
        while (listIterator.hasNext()) {
            System.out.println(listIterator.nextIndex()+","+listIterator.next());
        }
        System.out.println("--------列表迭代器:从后往前--------");
        while (listIterator.hasPrevious()) {
            System.out.println(listIterator.previousIndex()+","+listIterator.previous());
        }

        //4判断
        System.out.println(li.contains("苹果"));
        System.out.println(li.isEmpty());

        //获取元素的位置
        System.out.println(li.indexOf("香蕉"));
    }
}

结果:

相关推荐
Q_Q51100828513 分钟前
python的婚纱影楼管理系统
开发语言·spring boot·python·django·flask·node.js·php
EutoCool24 分钟前
Qt窗口:菜单栏
开发语言·c++·嵌入式硬件·qt·前端框架
长风破浪会有时呀25 分钟前
记一次接口优化历程 CountDownLatch
java
云朵大王1 小时前
SQL 视图与事务知识点详解及练习题
java·大数据·数据库
nightunderblackcat1 小时前
新手向:使用Python将多种图像格式统一转换为JPG
开发语言·python
我爱Jack1 小时前
深入解析 LinkedList
java·开发语言
engchina1 小时前
Python PDF处理库深度对比:PyMuPDF、pypdfium2、pdfplumber、pdfminer的关系与区别
开发语言·python·pdf
拓端研究室1 小时前
专题:2025供应链数智化与效率提升报告|附100+份报告PDF、原数据表汇总下载
开发语言·php
一百天成为python专家2 小时前
python库之jieba 库
开发语言·人工智能·python·深度学习·机器学习·pycharm·python3.11
Go Dgg2 小时前
【Go + Gin 实现「双 Token」管理员登录】
开发语言·golang·gin