- El método indexOf(Object o) de CopyOnWriteArrayList devuelve la primera aparición del elemento pasado en la lista. Devuelve -1 si el elemento no está presente en la lista.
Sintaxis:
public int indexOf(Object o)
Parámetros: La función acepta un parámetro o cuya primera aparición se va a devolver.
Valor devuelto: la función devuelve la primera aparición del elemento. Devuelve -1 si el elemento no está presente en la lista.
Los siguientes programas ilustran la función anterior:
Programa 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
));
}
}
Producción:CopyOnWriteArrayList: [32, 67, 67, 100] indexOf value: 1
Programa 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
));
}
}
Producción:CopyOnWriteArrayList: [32, 67, 67, 100] indexOf value: -1
- El método indexOf(E e, int index) de CopyOnWriteArrayList devuelve la primera aparición del elemento pasado en la lista después del índice de posición. Devuelve -1 si el elemento no está presente en la lista.
Sintaxis:
public int indexOf(E e, int index)
Parámetros: La función acepta dos parámetros que se describen a continuación:
- índice: especifica el índice a partir del cual se buscará la ocurrencia.
- e : especifica el elemento cuya primera aparición desde el índice de posición se va a devolver.
Valor devuelto: la función devuelve la primera aparición del elemento después del índice de posición. Devuelve -1 si el elemento no está presente en la lista.
Excepciones: la función genera una excepción IndexOutOfBoundsException si el índice especificado es negativo.
Los siguientes programas ilustran la función anterior:
Programa 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
));
}
}
Producción:CopyOnWriteArrayList: [32, 67, 67, 67] indexOf value: 2
Programa 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
));
}
}
Producción:
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)
Referencia: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CopyOnWriteArrayList.html#indexOf-E-int-