The isLegalReplacement() method is a built-in method of the java.nio.charset.CharsetEncoder gives us an indication on whether or not the given byte array is a legal replacement value for this encoder. A replacement is legal if it is possible to decode the replacement into one or more sixteen-bit Unicode characters.
Syntax:
public boolean isLegalReplacement(byte[] repl)
Parameters: The function accepts a mandatory parameter repl which specifies the byte array to be tested.
Return Value: The function returns a boolean value. It returns true if the byte array is a legal replacement of the encoder, else it returns false.
Below is the implementation of the above function:
Program 1:
// Java program to implement// the above functionimport java.nio.CharBuffer;import java.nio.charset.Charset;import java.nio.charset.CharsetEncoder;  public class Main {    public static void main(String[] args) throws Exception    {        // Gets the encoder        CharsetEncoder encoder = Charset.forName("UTF8").newEncoder();          // Prints if legal or not        System.out.println(encoder.isLegalReplacement(new byte[] {}));    }} |
true
Program 2:
// Java program to implement// the above functionimport java.nio.CharBuffer;import java.nio.charset.Charset;import java.nio.charset.CharsetEncoder;  public class Main {    public static void main(String[] args) throws Exception    {        // Gets the encoder        CharsetEncoder encoder = Charset.forName("US-ASCII").newEncoder();          // Prints if legal or not        System.out.println(encoder.isLegalReplacement(new byte[] {}));    }} |
true
