當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java CopyOnWriteArrayList indexOf()用法及代碼示例


  • CopyOnWriteArrayList的indexOf(Object o)方法返回列表中傳遞的元素的第一次出現。如果列表中不存在該元素,則返回-1。

    用法:

    public int indexOf(Object o)

    參數:該函數接受將返回其首次出現的參數o。

    返回值:該函數返回元素的第一次出現。如果列表中不存在該元素,則返回-1。


    以下示例程序旨在說明上述函數:

    示例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<Integer> ArrLis 
                = new CopyOnWriteArrayList<Integer>(); 
      
            // 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
    

    示例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<Integer> ArrLis 
                = new CopyOnWriteArrayList<Integer>(); 
      
            // 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)方法返回位置索引之後列表中傳遞的元素的第一次出現。如果列表中不存在該元素,則返回-1。

    用法:

    public int indexOf(E e, int index)

    參數:該函數接受以下兩個參數:

    • index:指定要從中搜索事件的索引。
    • e:指定要從位置索引中首次出現的元素。

    返回值:該函數返回位置索引之後元素的第一個匹配項。如果列表中不存在該元素,則返回-1。

    異常:如果指定的索引為負,該函數將引發IndexOutOfBoundsException。

    以下示例程序旨在說明上述函數:


    示例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<Integer> ArrLis 
                = new CopyOnWriteArrayList<Integer>(); 
      
            // 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
    

    示例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<Integer> ArrLis 
                = new CopyOnWriteArrayList<Integer>(); 
      
            // 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://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CopyOnWriteArrayList.html#indexOf-E-int-



相關用法


注:本文由純淨天空篩選整理自gopaldave大神的英文原創作品 CopyOnWriteArrayList indexOf() method in Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。