El método addIfAbsent(E e) de CopyOnWriteArrayList agrega el elemento pasado en el parámetro al final de la Lista si el elemento no está presente en la lista. La función devuelve verdadero al agregar un nuevo elemento a la lista.
Sintaxis:
public boolean addIfAbsent(E e)
Parámetros: la función acepta un solo elemento de parámetro obligatorio que especifica el elemento que se agregará a la lista si no está presente.
Valor devuelto: la función devuelve verdadero si se agrega a la lista.
Los siguientes programas ilustran la función anterior:
Programa 1:
// Java Program to illustrate the CopyOnWriteArrayList // addIfAbsent(element) 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.addIfAbsent(2); ArrLis.addIfAbsent(3); ArrLis.addIfAbsent(4); ArrLis.addIfAbsent(7); // print CopyOnWriteArrayList System.out.println("CopyOnWriteArrayList: " + ArrLis); System.out.println("On adding 4 it returns " + ArrLis.addIfAbsent(4) + " as it is present"); } }
Producción:
CopyOnWriteArrayList: [2, 3, 4, 7] On adding 4 it returns false as it is present
Programa 2:
// Java Program to illustrate the CopyOnWriteArrayList // addIfAbsent(element) 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<String> ArrLis = new CopyOnWriteArrayList<String>(); // Add elements ArrLis.addIfAbsent("gopal"); ArrLis.addIfAbsent("gfg"); ArrLis.addIfAbsent("jgec"); ArrLis.addIfAbsent("sudo"); // print CopyOnWriteArrayList System.out.println("CopyOnWriteArrayList: " + ArrLis); System.out.println("On adding 'sudo' it returns " + ArrLis.addIfAbsent("sudo") + " as it is present"); } }
Producción:
CopyOnWriteArrayList: [gopal, gfg, jgec, sudo] On adding 'sudo' it returns false as it is present
Referencia: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CopyOnWriteArrayList.html#addIfAbsent-E-