这个 重复() 方法 JAVA尼奥。长缓冲区 类用于创建新的 长缓冲区 共享给定缓冲区的内容。
null
语法:
public abstract LongBuffer duplicate()
返回值: 此方法返回 新长缓冲区 它承载了之前的长缓冲区内容
下面是一些例子来说明 重复() 方法:
例1: 使用直接长缓冲区
// 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" ); } } } |
输出:
Original LongBuffer: [8, 0, 9, 0, 0, 0, 0, 0, 0, 0] Duplicate LongBuffer: [8, 0, 9, 0, 0, 0, 0, 0, 0, 0]
例2: 使用只读长缓冲区
// 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" ); } } } |
输出:
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,
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END