【java 对象容器--集合】List集合常用方法和遍历集合

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013421629/article/details/82113761

List 接口继承自 Collection 接口,List 接口中的很多方法都继承自 Collection 接口的。List 接口中常用方法如下。
1. 操作元素

get(int index):返回 List 集合中指定位置的元素。
set(int index, Object element):用指定元素替换 List 集合中指定位置的元素。
add(Object element):在 List 集合的尾部添加指定的元素。该方法是从 Collection集合继承过了的。
add(int index, Object element):在 List 集合的指定位置插入指定元素。
remove(int index):移除 List 集合中指定位置的元素。
remove(Object element):如果 List 集合中存在指定元素,则从 List 集合中移除第一次出现的指定元素。该方法是从Collection集合继承过了的。
clear():从 List 集合中移除所有元素。该方法是从 Collection 集合继承过了的。

2. 判断元素

isEmpty():判断 List 集合中是否有元素,没有返回 true,有返回 false。该方法是从 Collection 集合继承过了的。
contains(Object element):判断 List 集合中是否包含指定元素,包含返回 true,不包含返回 false。该方法是从 Collection 集合继承过了的。

3. 查询元素

indexOf(Object o):从前往后查找 List 集合元素,返回第一次出现指定元素的索引,如果此列表不包含该元素,则返回-1。
lastIndexOf(Object o):从后往前查找 List 集合元素,返回第一次出现指定元素的索引,如果此列表不包含该元素,则返回-1。

4. 其他

iterator():返回迭代器(Iterator)对象,迭代器对象用于遍历集合。该方法是从Collection 集合继承下来的。
size():返回 List 集合中的元素数,返回值是 int 类型。该方法是从 Collection 集合继承下来的。
subList(int fromIndex, int toIndex):返回 List 集合中指定的 fromIndex(包括 )和toIndex(不包括)之间的元素集合,返回值 List 集合。

5、遍历集合
集合最常用的操作之一是遍历,遍历就是将集合中的每一个元素取出来,进行操作或
计算。List 集合遍历有三种方法:

  • 使用 for 循环遍历:List 集合可以使用 for 循环进行遍历,for 循环中有循环变量,通过循环变量可以访问 List 集合中的元素。
  • 使用 for-each 循环遍历:for-each 循环是针对遍历各种类型集合而推出的,笔者推荐使用这种遍历方法。
  • 使用迭代器遍历:Java 提供了多种迭代器,List集合可以使用 Iterator 和 ListIterator迭代器。
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class helloworld {
    public static void main(String[] args) {
        System.out.println("hello world");

        List list=new ArrayList();
        String b="B";

        //  向集合中添加元素
        list.add("A");
        list.add(b);
        list.add("C");
        list.add(b);
        list.add("D");
        list.add("E");
        // 打印集合元素个数
        System.out.println("集合size="+list.size());
        // 打印集合
        System.out.println(list);
        // 从前往后查找集合中的"B"元素
        System.out.println("indexOf(\"B\") = " + list.indexOf(b));
        // 从后往前查找集合中的"B"元素
        System.out.println("lastIndexOf(\"B\") = " + list.lastIndexOf(b));

        //删除集合中第一个"B"元素
        list.remove(b);
        System.out.println("remove(3)前: " + list);
        //判断集合中是否包含"B"元素
        System.out.println("是否包含\"B\":" + list.contains(b));

        //删除集合第4个元素
        list.remove(3);
        System.out.println("remove(3)后: " + list);
        //判断集合是否为空
        System.out.println("list集合是空的:" + list.isEmpty());

        System.out.println("替换前:" + list);

        //替换集合第2个元素
        list.set(1, "F");
        System.out.println("替换后:" + list);


        //清空集合
        list.clear();
        System.out.println(list);

        // 重新添加元素
        list.add(1);//发生自动装箱
        list.add(3);
        int item1 = (Integer)list.get(1);//发生自动拆箱

        System.out.println(item1);

        // 1.使用for循环遍历
        System.out.println("--1.使用for循环遍历--");
        for (int i = 0; i < list.size(); i++) {
            System.out.printf("读取集合元素(%d): %s \n", i, list.get(i));
        }

        // 2.使用for-each循环遍历
        System.out.println("--2.使用for-each循环遍历--");
        for (Object item : list) {
            Integer s = (Integer) item;
            System.out.println("读取集合元素: " + s);
        }

        // 3.使用迭代器遍历
        System.out.println("--3.使用迭代器遍历--");
        Iterator it = list.iterator();
        while (it.hasNext()) {
            Object item = it.next();
            Integer s = (Integer) item;
            System.out.println("读取集合元素: " + s);
        }
    }
}

运行结果:

hello world
集合size=6
[A, B, C, B, D, E]
indexOf("B") = 1
lastIndexOf("B") = 3
remove(3)前: [A, C, B, D, E]
是否包含"B":true
remove(3)后: [A, C, B, E]
list集合是空的:false
替换前:[A, C, B, E]
替换后:[A, F, B, E]
[]
3
--1.使用for循环遍历--
读取集合元素(0): 1 
读取集合元素(1): 3 
--2.使用for-each循环遍历--
读取集合元素: 1
读取集合元素: 3
--3.使用迭代器遍历--
读取集合元素: 1
读取集合元素: 3

Process finished with exit code 0

猜你喜欢

转载自blog.csdn.net/u013421629/article/details/82113761