📜  Java中的缓冲区 hasRemaining() 方法及示例

📅  最后修改于: 2022-05-13 01:55:23.585000             🧑  作者: Mango

Java中的缓冲区 hasRemaining() 方法及示例

Java.nio.Buffer类的hasRemaining()方法用于判断当前位置和限制之间是否有任何元素。

句法:

public final boolean hasRemaining()

返回:当且仅当此缓冲区中至少有一个元素剩余时,此方法才会返回true

下面是说明hasRemaining()方法的示例:

示例 1:

// Java program to demonstrate
// hasRemaining() 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 isRemain = buffer.hasRemaining();
  
        // checking if else condition
        if (isRemain)
            System.out.println("there is at least one "
                               + "element remaining "
                               + "in this buffer");
        else
            System.out.println("there is no "
                               + "element remaining "
                               + "in this buffer");
    }
}
输出:
there is at least one element remaining in this buffer

示例 2:

// Java program to demonstrate
// hasRemaining() method
  
import java.nio.*;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // Declaring the capacity of the ByteBuffer
        int capacity = 0;
  
        // creating object of bytebuffer
        // and allocating size capacity
        ByteBuffer bb = ByteBuffer.allocate(capacity);
  
        // Typecast bytebuffer to Buffer
        Buffer buffer = (Buffer)bb;
  
        // checking buffer is backed by array or not
        boolean isRemain = buffer.hasRemaining();
  
        // checking if else condition
        if (isRemain)
            System.out.println("there is at least one "
                               + "element remaining"
                               + " in this buffer");
        else
            System.out.println("there is no "
                               + "element remaining"
                               + " in this buffer");
    }
}
输出:
there is no element remaining in this buffer

参考: https://docs.oracle.com/javase/9/docs/api/ Java/nio/Buffer.html#hasRemaining–