Java中的 CopyOnWriteArrayList indexOf() 方法
- CopyOnWriteArrayList的indexOf(Object o)方法返回列表中传递的元素的第一次出现。如果元素不在列表中,则返回 -1。
句法:
public int indexOf(Object o)
参数:该函数接受一个参数o ,它的第一次出现将被返回。
返回值:函数返回第一次出现的元素。如果元素不在列表中,则返回 -1。
下面的程序说明了上述函数:
方案一:
// Java Program to illustrate the CopyOnWriteArrayList // indexOf() method in Java import java.util.concurrent.CopyOnWriteArrayList; import java.util.*; public class GFG { public static void main(String[] args) { // create object of CopyOnWriteArrayList CopyOnWriteArrayList
ArrLis = new CopyOnWriteArrayList (); // Add elements ArrLis.add(32); ArrLis.add(67); ArrLis.add(67); ArrLis.add(100); // print CopyOnWriteArrayList System.out.println("CopyOnWriteArrayList: " + ArrLis); // first occurrence of 67 System.out.println("indexOf value: " + ArrLis.indexOf(67)); } } 输出:CopyOnWriteArrayList: [32, 67, 67, 100] indexOf value: 1
方案二:
// Java Program to illustrate the CopyOnWriteArrayList // indexOf() method in Java import java.util.concurrent.CopyOnWriteArrayList; import java.util.*; public class GFG { public static void main(String[] args) { // create object of CopyOnWriteArrayList CopyOnWriteArrayList
ArrLis = new CopyOnWriteArrayList (); // Add elements ArrLis.add(32); ArrLis.add(67); ArrLis.add(67); ArrLis.add(100); // print CopyOnWriteArrayList System.out.println("CopyOnWriteArrayList: " + ArrLis); // 200 is not present System.out.println("indexOf value: " + ArrLis.indexOf(200)); } } 输出:CopyOnWriteArrayList: [32, 67, 67, 100] indexOf value: -1
- CopyOnWriteArrayList的indexOf(E e, int index)方法返回位置 index 之后列表中传递的元素的第一次出现。如果元素不在列表中,则返回 -1。
句法:
public int indexOf(E e, int index)
参数:该函数接受两个参数,如下所述:
- index:指定要从中搜索事件的索引。
- e :指定从位置索引中第一次出现的元素将被返回。
返回值:函数返回位置索引后第一次出现的元素。如果元素不在列表中,则返回 -1。
异常:如果指定的索引为负数,该函数将引发IndexOutOfBoundsException 。
下面的程序说明了上述函数:
方案一:
// Java Program to illustrate the CopyOnWriteArrayList // indexOf() method in Java import java.util.concurrent.CopyOnWriteArrayList; import java.util.*; public class GFG { public static void main(String[] args) { // create object of CopyOnWriteArrayList CopyOnWriteArrayList
ArrLis = new CopyOnWriteArrayList (); // Add elements ArrLis.add(32); ArrLis.add(67); ArrLis.add(67); ArrLis.add(67); // print CopyOnWriteArrayList System.out.println("CopyOnWriteArrayList: " + ArrLis); // first occurrence of 67 from 2nd index System.out.println("indexOf value: " + ArrLis.indexOf(67, 2)); } } 输出:CopyOnWriteArrayList: [32, 67, 67, 67] indexOf value: 2
方案二:
// Java Program to illustrate the CopyOnWriteArrayList // indexOf() method in Java import java.util.concurrent.CopyOnWriteArrayList; import java.util.*; public class GFG { public static void main(String[] args) { // create object of CopyOnWriteArrayList CopyOnWriteArrayList
ArrLis = new CopyOnWriteArrayList (); // Add elements ArrLis.add(32); ArrLis.add(67); ArrLis.add(67); ArrLis.add(100); // print CopyOnWriteArrayList System.out.println("CopyOnWriteArrayList: " + ArrLis); // -1 is out of range, hence exception System.out.println("indexOf value: " + ArrLis.indexOf(-1, 200)); } } 输出:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1 at java.util.concurrent.CopyOnWriteArrayList.indexOf(CopyOnWriteArrayList.java:198) at java.util.concurrent.CopyOnWriteArrayList.indexOf(CopyOnWriteArrayList.java:263) at GFG.main(GFG.java:24)
参考: https: Java/util/concurrent/CopyOnWriteArrayList.html#indexOf-E-int-