Java中CopyOnWriteArrayList的lastIndexOf()方法

Java中CopyOnWriteArrayList的lastIndexOf()方法

  • CopyOnWriteArrayListlastIndexOf(Object o) 方法返回列表中传递的元素的最后一次出现。如果元素不在列表中,则返回-1。

语法:
public int lastIndexOf(Object o)

参数: 函数接受一个 o 参数,其中返回最后一次出现的参数。

返回值: 如果元素不在列表中,则该函数返回元素的最后一次出现。它返回-1。

以下程序说明了上述函数:

程序1:

// Java程序说明CopyOnWriteArrayList
// lastIndexOf()方法 在Java
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // 创建CopyOnWriteArrayList对象
        CopyOnWriteArrayList<Integer> ArrLis
            = new CopyOnWriteArrayList<Integer>();
  
        //添加元素
        ArrLis.add(32);
        ArrLis.add(67);
        ArrLis.add(67);
        ArrLis.add(100);
  
        //打印CopyOnWriteArrayList
        System.out.println("CopyOnWriteArrayList: "
                                           + ArrLis);
  
        //最近的67
        System.out.println("lastIndexOf value: " 
                         + ArrLis.lastIndexOf(67));
    }
}

输出:

CopyOnWriteArrayList: [32, 67, 67, 100]
lastIndexOf value: 2

程序2:

// Java程序说明CopyOnWriteArrayList
// lastIndexOf()方法 在Java
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // 创建CopyOnWriteArrayList对象
        CopyOnWriteArrayList<Integer> ArrLis
            = new CopyOnWriteArrayList<Integer>();
  
        //添加元素
        ArrLis.add(32);
        ArrLis.add(67);
        ArrLis.add(67);
        ArrLis.add(100);
  
        //打印CopyOnWriteArrayList
        System.out.println("CopyOnWriteArrayList: " 
                                          + ArrLis);
  
        //200不存在
        System.out.println("lastIndexOf value: " 
                          + ArrLis.lastIndexOf(200));
    }
}

输出:

CopyOnWriteArrayList: [32, 67, 67, 100]
lastIndexOf value: -1
  • CopyOnWriteArrayListlastIndexOf(E e,int index) 方法返回指定位置后面的元素最后一次出现。如果元素不在列表中,则返回-1。

语法:

public int lastIndexOf(E e, int index)

参数: 函数接受两个参数,具体如下:

  • index: 指定要搜索的元素的索引。
  • e :指定从位置 索引 开始返回元素的最后一次出现的元素。

返回值: 如果元素不在列表中,则该函数返回指定位置后面的元素的最后一次出现。它返回-1。

异常: 如果指定的索引为负,则该函数会抛出IndexOutOfBoundsException。

下面的程序说明了上述函数:

程序 1:

// Java程序演示了CopyOnWriteArrayList
// Java中的lastIndexOf()方法
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.*;

public class GFG {
    public static void main(String[] args)
    {
  
        // 创建CopyOnWriteArrayList对象
        CopyOnWriteArrayList<Integer> ArrLis
            = new CopyOnWriteArrayList<Integer>();
  
        // 添加元素
        ArrLis.add(32);
        ArrLis.add(67);
        ArrLis.add(67);
        ArrLis.add(67);
  
        // 打印CopyOnWriteArrayList
        System.out.println("CopyOnWriteArrayList: " 
                                             + ArrLis);
  
        // 67从第二个索引开始lastIndexOf()方法的最后一次出现
        System.out.println("lastIndexOf value: " 
                          + ArrLis.lastIndexOf(67, 2));
    }
}

输出:

CopyOnWriteArrayList: [32, 67, 67, 67]
lastIndexOf value: 2

程序 2:

// Java程序演示了CopyOnWriteArrayList
// Java中的lastIndexOf()方法
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.*;

public class GFG {
    public static void main(String[] args)
    {
  
        // 创建CopyOnWriteArrayList对象
        CopyOnWriteArrayList<Integer> ArrLis
            = new CopyOnWriteArrayList<Integer>();
  
        // 添加元素
        ArrLis.add(32);
        ArrLis.add(67);
        ArrLis.add(67);
        ArrLis.add(100);
  
        // 打印CopyOnWriteArrayList
        System.out.println("CopyOnWriteArrayList: " 
                                          + ArrLis);
  
        // -1超出范围,因此异常
        System.out.println("lastIndexOf value: " 
                       + ArrLis.lastIndexOf(-1, 200));
    }
}

输出:

Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: -1
at java.util.concurrent.CopyOnWriteArrayList.lastIndexOf(CopyOnWriteArrayList.java:198)
at java.util.concurrent.CopyOnWriteArrayList.lastIndexOf(CopyOnWriteArrayList.java:263)
at GFG.main(GFG.java:24)

参考: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CopyOnWriteArrayList.html#lastIndexOf-E-int-

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程