Java Buffer isReadOnly()方法及示例

Java Buffer isReadOnly()方法及示例

java.nio.Buffer 类的 isReadOnly() 方法是用来告诉这个缓冲区是否是只读的。

语法

public abstract boolean isReadOnly()

返回: 该方法将在且仅在该缓冲区为只读时返回true。

下面是说明 isReadOnly() 方法的例子。

例子 1 :

// Java program to demonstrate
// isReadOnly() method
  
import java.nio.*;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // Declaring the capacity of the ByteBuffer
        int capacity = 10;
  
        // creating object of bytebuffer
        // and allocating size capacity
        ByteBuffer bb = ByteBuffer.allocate(capacity);
  
        // putting the value in bytebuffer
        bb.put((byte)10);
        bb.put((byte)20);
        bb.rewind();
  
        // Typecast bytebuffer to Buffer
        Buffer buffer = (Buffer)bb;
  
        // checking buffer is backed by array or not
        boolean isReadOnly = buffer.isReadOnly();
  
        // checking if else condition
        if (isReadOnly)
            System.out.println("buffer is"
                               + " ReadOnly buffer");
        else
            System.out.println("buffer is not"
                               + " ReadOnly buffer");
    }
}

输出:

buffer is not ReadOnly buffer

例子 2 :

// Java program to demonstrate
// isReadOnly() method
  
import java.nio.*;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // Declaring the capacity of the ByteBuffer
        int capacity = 10;
  
        // creating object of bytebuffer
        // and allocating size capacity
        ByteBuffer bb = ByteBuffer.allocate(capacity);
  
        // putting the value in bytebuffer
        bb.put((byte)10);
        bb.put((byte)20);
        bb.rewind();
  
        // Creating a read-only copy of ByteBuffer
        // using asReadOnlyBuffer() method
        ByteBuffer bb1 = bb.asReadOnlyBuffer();
  
        // Typecast read-only ByteBuffer to read-only buffer
        Buffer buffer = (Buffer)bb1;
  
        // checking buffer is backed by array or not
        boolean isReadOnly = buffer.isReadOnly();
  
        // checking if else condition
        if (isReadOnly)
            System.out.println("buffer is"
                               + " ReadOnly buffer");
        else
            System.out.println("buffer is not"
                               + " ReadOnly buffer");
    }
}

输出:

buffer is ReadOnly buffer

参考资料: https://docs.oracle.com/javase/9/docs/api/java/nio/Buffer.html#isReadOnly-

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程