The limit() method of java.nio.CharBuffer Class is used to set this buffer’s limit. If the position is larger than the new limit then it is set to the new limit. If the mark is defined and larger than the new limit then it is discarded.
Syntax:
public CharBuffer limit(int newLimit)
Return Value: This method returns 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 CharBuffer // using allocate() method CharBuffer charBuffer = CharBuffer.allocate( 4 ); // append char value in CharBuffer // using char() method charBuffer.append( 'a' ); charBuffer.append( 'b' ); // print the char buffer System.out.println( "CharBuffer before " + "setting buffer's limit: " + Arrays.toString( charBuffer.array()) + "\nPosition: " + charBuffer.position() + "\nLimit: " + charBuffer.limit()); // Limit the CharBuffer // using limit() method charBuffer.limit( 1 ); // print the char buffer System.out.println( "CharBuffer before " + "setting buffer's limit: " + Arrays.toString( charBuffer.array()) + "\nPosition: " + charBuffer.position() + "\nLimit: " + charBuffer.limit()); } } |
CharBuffer before setting buffer's limit: [a, b,, ] Position: 2 Limit: 4 CharBuffer after setting buffer's limit: [a, b,, ] 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 CharBuffer // using allocate() method CharBuffer charBuffer = CharBuffer.allocate( 5 ); // append char value in CharBuffer // using char() method charBuffer.append( 'a' ); charBuffer.append( 'b' ); charBuffer.append( 'c' ); // mark will be going to discarded by limit() charBuffer.mark(); // print the char buffer System.out.println( "CharBuffer before " + "setting buffer's limit: " + Arrays.toString( charBuffer.array()) + "\nPosition: " + charBuffer.position() + "\nLimit: " + charBuffer.limit()); // Limit the charBuffer // using limit() method charBuffer.limit( 4 ); // print the char buffer System.out.println( "CharBuffer before " + "setting buffer's limit: " + Arrays.toString( charBuffer.array()) + "\nPosition: " + charBuffer.position() + "\nLimit: " + charBuffer.limit()); } } |
CharBuffer before setting buffer's limit: [a, b, c,, ] Position: 3 Limit: 5 CharBuffer after setting buffer's limit: [a, b, c,, ] Position: 3 Limit: 4
Reference: https://docs.oracle.com/javase/9/docs/api/java/nio/CharBuffer.html#limit-int-