唠唠SE的集合-03——List接口 原

3. List

有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。

用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。

1:增加

void add(int index, E element) 指定位置添加元素(也就是插入)

boolean addAll(int index, Collection c) 指定位置添加集合

import java.util.ArrayList;
import java.util.List;

public class Test {
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<Integer>();
        list.add(5);
        list.add(123);
        list.add(456);
        list.add(741);
        System.out.println(list); // [5, 123, 456, 741]
        list.add(2, 555);
        System.out.println(list); // [5, 123, 555, 456, 741]
    }
}

2:删除

E remove(int index) 删除指定位置元素

import java.util.ArrayList;
import java.util.List;

public class Test {
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<Integer>();
        list.add(5);
        list.add(123);
        list.add(456);
        list.add(741);
        System.out.println(list); // [5, 123, 456, 741]
        list.remove(2);
        System.out.println(list); // [5, 123, 741]
    }
}

3:修改

E set(int index, E element) 返回的是需要替换的集合中的元素

import java.util.ArrayList;
import java.util.List;

public class Test {
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<Integer>();
        list.add(5);
        list.add(123);
        list.add(456);
        list.add(741);
        System.out.println(list); // [5, 123, 456, 741]
        list.set(0, 9999);
        System.out.println(list); // [9999, 123, 456, 741]
    }
}

4:查找:

E get(int index) //注意: IndexOutOfBoundsException

int indexOf(Object o) // 找不到返回-1

int lastIndexOf(Object o)

import java.util.ArrayList;
import java.util.List;

public class Test {
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<Integer>();
        list.add(5);
        list.add(123);
        list.add(456);
        list.add(741);
        System.out.println(list); // [5, 123, 456, 741]
        System.out.println(list.get(1)); // 123
        System.out.println(list.get(5)); // 抛出IndexOutOfBoundsException
        System.out.println(list.indexOf(456)); // 2
        System.out.println(list.indexOf(789)); // -1
    }
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏用户3030674的专栏

java类集框架(ArrayList,LinkedList,Vector区别)

主要分三类:集合(set)、列表(List)、映射(Map) 1.集合:没有重复对象,没有特定排序方式 2.列表:对象按索引位置排序,可以有重复对象 3.映射...

2232
来自专栏赵俊的Java专栏

不用加减乘除做加法

1854
来自专栏java一日一条

如何用Map对象创建Set对象

Java中的Map和Set有不少相似之处。本文将分享一个把Map类转化成Set类的小技巧。

761
来自专栏一直在跳坑然后爬坑

Kotlin之“ArrayList”

2602
来自专栏好好学java的技术栈

”365算法每日学计划”:02打卡-线性表(赠书活动第①期预告)

1323
来自专栏javathings

为什么说 Java 的泛型是伪泛型?

Java 的泛型是伪泛型, 也就是骗骗编译器的。运行期的泛型类型,被擦除了,因此,在运行期,ArrayList<String> 和 ArrayList<int>...

3802
来自专栏desperate633

LintCode 用递归打印数字题目分析代码

recursion(i) { if i > largest number: return results.add(i) recursion(i + 1)...

671
来自专栏小樱的经验随笔

【Java数据结构学习笔记之一】线性表的存储结构及其代码实现

应用程序后在那个的数据大致有四种基本的逻辑结构: 集合:数据元素之间只有"同属于一个集合"的关系 线性结构:数据元素之间存在一个对一个的关系 树形结构:数...

3055
来自专栏我是业余自学C/C++的

Remove Duplicates from Sorted Array II

1724
来自专栏技术小站

(转)JAVA HashSet 去除重复值原理

Java中的set是一个不包含重复元素的集合,确切地说,是不包含e1.equals(e2)的元素对。Set中允许添加null。Set不能保证集合里元素的顺序。

2741

扫码关注云+社区

领取腾讯云代金券