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

结果:

相关推荐
野犬寒鸦5 分钟前
JVM垃圾回收机制面试常问问题及详解
java·服务器·开发语言·jvm·后端·算法·面试
本喵是FW16 分钟前
C语言手记3
c语言·开发语言
一杯美式 no sugar23 分钟前
类和对象(中)
开发语言·c++
qq_4160187225 分钟前
实时数据可视化库
开发语言·c++·算法
_杨瀚博30 分钟前
JAVA找出哪个类import了不存在的类
java·后端
2401_8732046539 分钟前
C++中的策略模式进阶
开发语言·c++·算法
OKkankan40 分钟前
深入理解linux进程
java·linux·c++
xushichao198944 分钟前
C++中的职责链模式实战
开发语言·c++·算法
清风徐来QCQ1 小时前
js中的模板字符串
开发语言·前端·javascript
2301_818419011 小时前
C++中的协程编程
开发语言·c++·算法