The limit() method of java.nio.DoubleBuffer Class is used to modify this DoubleBuffer’s limit. This method takes the limit to be set as the parameter and sets that as the new limit of this Buffer. If the mark of this Buffer is already defined and is larger than the new specified limit, then this new limit is not set and discarded.
Syntax:
public final DoubleBuffer limit(int newLimit)
Return Value: This method returns this buffer after setting the specified new limit as the new limit of this Buffer.
Below are the examples to illustrate the limit() method:
Examples 1:
// Java program to demonstrate // limit() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // defining and allocating DoubleBuffer // using allocate() method DoubleBuffer doubleBuffer = DoubleBuffer.allocate( 4 ); // put double value in doubleBuffer // using put() method doubleBuffer.put( 20.5 ); doubleBuffer.put( 30.5 ); // print the double buffer System.out.println( "DoubleBuffer before " + "setting buffer's limit: " + Arrays.toString( doubleBuffer.array()) + "\nPosition: " + doubleBuffer.position() + "\nLimit: " + doubleBuffer.limit()); // Limit the doubleBuffer // using limit() method doubleBuffer.limit( 1 ); // print the double buffer System.out.println( "\nDoubleBuffer after " + "setting buffer's limit: " + Arrays.toString( doubleBuffer.array()) + "\nPosition: " + doubleBuffer.position() + "\nLimit: " + doubleBuffer.limit()); } } |
DoubleBuffer before setting buffer's limit: [20.5, 30.5, 0.0, 0.0] Position: 2 Limit: 4 DoubleBuffer after setting buffer's limit: [20.5, 30.5, 0.0, 0.0] Position: 1 Limit: 1
Examples 2:
// Java program to demonstrate // limit() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // defining and allocating DoubleBuffer // using allocate() method DoubleBuffer doubleBuffer = DoubleBuffer.allocate( 5 ); // put double value in DoubleBuffer // using put() method doubleBuffer.put( 20.5 ); doubleBuffer.put( 30.5 ); doubleBuffer.put( 40.5 ); // mark will be going to // discarded by limit() doubleBuffer.mark(); // print the double buffer System.out.println( "DoubleBuffer before " + "setting buffer's limit: " + Arrays.toString( doubleBuffer.array()) + "\nPosition: " + doubleBuffer.position() + "\nLimit: " + doubleBuffer.limit()); // Limit the doubleBuffer // using limit() method doubleBuffer.limit( 4 ); // print the double buffer System.out.println( "\nDoubleBuffer before " + "setting buffer's limit: " + Arrays.toString( doubleBuffer.array()) + "\nPosition: " + doubleBuffer.position() + "\nLimit: " + doubleBuffer.limit()); } } |
DoubleBuffer before setting buffer's limit: [20.5, 30.5, 40.5, 0.0, 0.0] Position: 3 Limit: 5 DoubleBuffer before setting buffer's limit: [20.5, 30.5, 40.5, 0.0, 0.0] Position: 3 Limit: 4
Reference: https://docs.oracle.com/javase/9/docs/api/java/nio/DoubleBuffer.html#limit-int-