欢迎访问宙启技术站
智能推送

Java list函数的详细介绍

发布时间:2023-05-19 17:52:18

Java中的List是一种用于存储一组元素的数据结构,支持有序、可重复的集合。它提供了许多常用的操作方法,如添加元素、删除元素、获取元素等,同时还支持排序和查找功能。下面就来详细介绍一下Java中List的主要方法和用法。

1. 添加操作

添加元素是List最基本的操作之一,List提供了三个添加元素的方法:

1)add(Object o):在列表的末尾添加指定的元素。

例如:

List<String> list = new ArrayList<>();
list.add("apple");
list.add("orange");
list.add("banana");

2)add(int index, Object o):在列表的指定位置插入指定的元素。

例如:

List<String> list = new ArrayList<>();
list.add("apple");
list.add("orange");
list.add(1, "banana");

上面的代码将在列表的第二个位置插入一个"banana"元素。

3)addAll(Collection c):将一个集合中的所有元素添加到列表的末尾。

例如:

List<String> list1 = new ArrayList<>();
list1.add("apple");
list1.add("orange");

List<String> list2 = new ArrayList<>();
list2.add("banana");
list2.add("pear");

list1.addAll(list2);

在上面的例子中,list1中将包含四个元素:"apple", "orange", "banana", "pear"。

2. 删除操作

与添加操作一样,删除元素也是List中的常用操作之一,List提供了三个删除元素的方法:

1)remove(Object o):从列表中删除指定的元素,并返回是否删除成功。

例如:

List<String> list = new ArrayList<>();
list.add("apple");
list.add("orange");
list.add("banana");
list.remove("orange");

执行完上面的代码后,列表中将只剩下"apple"和"banana"两个元素。

2)remove(int index):从列表中删除指定索引位置的元素,并返回被删除的元素。

例如:

List<String> list = new ArrayList<>();
list.add("apple");
list.add("orange");
list.add("banana");
list.remove(1);

上面的代码将会从列表中删除"orange"元素,并返回"orange"字符串。

3)removeAll(Collection c):从列表中删除另一个集合中的所有元素,并返回是否删除成功。

例如:

List<String> list1 = new ArrayList<>();
list1.add("apple");
list1.add("orange");
list1.add("banana");

List<String> list2 = new ArrayList<>();
list2.add("banana");
list2.add("pear");

list1.removeAll(list2);

执行完上面的代码后,list1中将只包含两个元素:"apple"和"orange"。

3. 获取操作

获取元素是List中的另一个常用操作,List提供了两个方法来获取元素:

1)get(int index):返回列表中指定位置的元素。

例如:

List<String> list = new ArrayList<>();
list.add("apple");
list.add("orange");
list.add("banana");
String s = list.get(1);

上面的代码将从列表中获取第二个元素,即"orange"字符串。

2)subList(int fromIndex, int toIndex):返回列表中指定范围内的元素,左闭右开。

例如:

List<String> list = new ArrayList<>();
list.add("apple");
list.add("orange");
list.add("banana");
List<String> subList = list.subList(0, 2);

上面的代码将获取list中的前两个元素,即"apple"和"orange"。

4. 修改操作

修改元素也是List中常见的操作,List提供了set方法来实现对指定位置元素的修改。

1)set(int index, Object element):将列表中指定位置的元素替换为指定的元素,并返回原来的元素。

例如:

List<String> list = new ArrayList<>();
list.add("apple");
list.add("orange");
list.add("banana");
String s = list.set(1, "pear");

上面的代码将用"pear"替换列表中的第二个元素"orange",并返回原来的"orange"字符串。

5. 查询操作

List提供了一些方法来实现元素的查询,比如contains方法来判断元素是否存在于列表中。

1)contains(Object o):返回列表是否包含指定的元素。

例如:

List<String> list = new ArrayList<>();
list.add("apple");
list.add("orange");
list.add("banana");
boolean b = list.contains("apple");

执行完上述代码后,b的值为true,因为列表中包含"apple"元素。

2)indexOf(Object o):返回列表中 次出现指定元素的位置,如果列表中并不包含该元素,则返回-1。

例如:

List<String> list = new ArrayList<>();
list.add("apple");
list.add("orange");
list.add("banana");
int index = list.indexOf("orange");

上面的代码将返回"orange"元素在列表中的位置,即1。

6. 排序操作

List还支持对元素进行排序的方法sort,sort有两种实现方式,一种是默认的排序方式,按自然顺序排序:

例如:

List<String> list = new ArrayList<>();
list.add("apple");
list.add("orange");
list.add("banana");
Collections.sort(list);

排序后,list中的元素将按字母顺序排列。如果要实现自定义排序,可以通过传递Comparator接口的实现来实现:

例如:

List<Employee> list = new ArrayList<>();
list.add(new Employee("Tom", 25, 5000));
list.add(new Employee("Jerry", 18, 6000));
list.add(new Employee("John", 27, 4500));
Collections.sort(list, new Comparator<Employee>() {
    @Override
    public int compare(Employee o1, Employee o2) {
        // 按照年龄排序
        return o1.getAge() - o2.getAge();
    }
});

在上述代码中,Comparator接口实现了按照年龄排序的功能。

综上所述,Java中的List提供了一系列常用的操作方法,可以很方便地实现元素的存储、操作和查询等功能。需要注意的是,不同的List实现类(如ArrayList、LinkedList等)在性能和应用场景上存在一定的差异,开发者需要根据具体的应用实现来选择合适的List实现类。