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("香蕉"));
    }
}

结果:

相关推荐
异常君3 分钟前
@Bean 在@Configuration 中和普通类中的本质区别
java·spring·面试
jackson凌3 分钟前
【Java学习笔记】Math方法
java·笔记·学习
西北大程序猿38 分钟前
单例模式与锁(死锁)
linux·开发语言·c++·单例模式
你不是我我1 小时前
【Java开发日记】说一说 SpringBoot 中 CommandLineRunner
java·开发语言·spring boot
yuan199971 小时前
Spring Boot 启动流程及配置类解析原理
java·spring boot·后端
2301_807606431 小时前
Java——抽象、接口(黑马个人听课笔记)
java·笔记
心扬1 小时前
python网络编程
开发语言·网络·python·tcp/ip
楚歌again1 小时前
【如何在IntelliJ IDEA中新建Spring Boot项目(基于JDK 21 + Maven)】
java·spring boot·intellij-idea
qq_454175791 小时前
c++学习-this指针
开发语言·c++·学习