Java.util.concurrent.atomic.AtomicIntegerArray.getAndIncrement () es un método incorporado en Java que incrementa atómicamente el valor presente en cualquier índice de un AtomicIntegerArray en uno. El método toma el valor de índice de AtomicIntegerArray como parámetro, devuelve el valor en ese índice antes del incremento y luego incrementa el valor en ese índice. La función getAndIncrement() es similar a la función incrementAndGet() pero la primera devuelve el valor antes del incremento mientras que la segunda devuelve el valor después de la operación de incremento.
Sintaxis:
public final int getAndIncrement(int i)
Parámetros: La función acepta un solo parámetro i que es el índice donde se realiza el incremento en una operación.
Valor de retorno: la función devuelve el valor anterior en ese índice antes de la actualización que está en Integer .
Los siguientes programas ilustran el método anterior:
Programa 1:
// Java program that demonstrates // the getAndIncrement() function import java.util.concurrent.atomic.AtomicIntegerArray; public class GFG { public static void main(String args[]) { // Initializing an array int a[] = { 11, 12, 13, 14, 15 }; // Initializing an AtomicIntegerArray with array a AtomicIntegerArray arr = new AtomicIntegerArray(a); // Displaying the AtomicIntegerArray System.out.println("The array : " + arr); // Index where operation is performed int idx = 0; // Updating the value at // idx applying getAndIncrement // and storing the previous value int prev = arr.getAndIncrement(idx); // Previous value at idx before update System.out.println("Value at index " + idx + " before the update is " + prev); // Displaying the AtomicIntegerArray System.out.println("The array after update : " + arr); } }
The array : [11, 12, 13, 14, 15] Value at index 0 before the update is 11 The array after update : [12, 12, 13, 14, 15]
Programa 2:
// Java program that demonstrates // the getAndIncrement() function import java.util.concurrent.atomic.AtomicIntegerArray; public class GFG { public static void main(String args[]) { // Initializing an array int a[] = { 11, 12, 13, 14, 15 }; // Initializing an AtomicIntegerArray with array a AtomicIntegerArray arr = new AtomicIntegerArray(a); // Displaying the AtomicIntegerArray System.out.println("The array : " + arr); // Index where operation is performed int idx = 3; // Updating the value at // idx applying getAndIncrement // and storing the previous value int prev = arr.getAndIncrement(idx); // Previous value at idx before update System.out.println("Value at index " + idx + " before the update is " + prev); // Displaying the AtomicIntegerArray System.out.println("The array after update : " + arr); } }
The array : [11, 12, 13, 14, 15] Value at index 3 before the update is 14 The array after update : [11, 12, 13, 15, 15]
Nota: La función getAndIncrement() es similar a incrementAndGet() pero la última función devuelve el valor actualizado mientras que la primera devuelve el valor anterior después de la actualización.