El método duplicate() de java.nio.LongBuffer Class se usa para crear un nuevo búfer largo que comparte el contenido del búfer dado.
Sintaxis:
public abstract LongBuffer duplicate()
Valor de retorno: este método devuelve el nuevo búfer largo que lleva el contenido del búfer largo anterior
A continuación se muestran los ejemplos para ilustrar el método duplicate() :
Ejemplos 1: uso de Longbuffer directo
// Java program to demonstrate // duplicate() method // Using direct Longbuffer import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the LongBuffer int capacity = 10; // Creating the LongBuffer try { // creating object of Longbuffer // and allocating size capacity LongBuffer ib1 = LongBuffer.allocate(capacity); // putting the value in Longbuffer ib1.put(8); ib1.put(2, 9); ib1.rewind(); // prLong the Original LongBuffer System.out.println("Original LongBuffer: " + Arrays.toString(ib1.array())); // Creating a duplicate copy of LongBuffer // using duplicate() method LongBuffer ib2 = ib1.duplicate(); // prLong the duplicate copy of LongBuffer System.out.println("Duplicate LongBuffer: " + Arrays.toString(ib2.array())); } catch (IllegalArgumentException e) { System.out.println("IllegalArgumentException catched"); } catch (ReadOnlyBufferException e) { System.out.println("ReadOnlyBufferException catched"); } } }
Producción:
Original LongBuffer: [8, 0, 9, 0, 0, 0, 0, 0, 0, 0] Duplicate LongBuffer: [8, 0, 9, 0, 0, 0, 0, 0, 0, 0]
Ejemplos 2: Usar Longbuffer de solo lectura
// Java program to demonstrate // duplicate() method // using read-onlyLongbuffer import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the LongBuffer int capacity = 10; // Creating the LongBuffer try { // creating object of Longbuffer // and allocating size capacity LongBuffer ib1 = LongBuffer.allocate(capacity); // putting the value in Longbuffer ib1.put(8); ib1.put(2, 9); ib1.rewind(); // prLong the Original LongBuffer System.out.println("Original LongBuffer: " + Arrays.toString(ib1.array())); // Creating a read-only copy of LongBuffer // using asReadOnlyBuffer() method LongBuffer readonly = ib1.asReadOnlyBuffer(); // prLong the read-only copy of LongBuffer System.out.print("read-only LongBuffer: "); while (readonly.hasRemaining()) System.out.print(readonly.get() + ", "); System.out.println(""); // Rewinding the readonly LongBuffer readonly.rewind(); // Creating a duplicate copy of LongBuffer // using duplicate() method LongBuffer ib2 = readonly.duplicate(); // prLong the duplicate copy of LongBuffer System.out.print("duplicate copy of read-only LongBuffer: "); while (ib2.hasRemaining()) System.out.print(ib2.get() + ", "); System.out.println(""); } catch (IllegalArgumentException e) { System.out.println("IllegalArgumentException catched"); } catch (ReadOnlyBufferException e) { System.out.println("ReadOnlyBufferException catched"); } } }
Producción:
Original LongBuffer: [8, 0, 9, 0, 0, 0, 0, 0, 0, 0] read-only LongBuffer: 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, duplicate copy of read-only LongBuffer: 8, 0, 9, 0, 0, 0, 0, 0, 0, 0,
Publicación traducida automáticamente
Artículo escrito por pawan_asipu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA