The needsInput() function of the Inflater class returns true if the input data buffer is empty else return false, if the input data buffer is empty then setInput() function is called to provide input
Function Signature:
public boolean needsInput()
Syntax:
i.needsInput();
Parameter: The function requires no parameter
Return Type: The function returns boolean value i.e. it returns true if the input buffer empty else return false.
Exception: The function does not throw any exception
Example 1: use of needsInput() function
// Java program to describe the use// of needsInput() function  import java.util.zip.*;import java.io.UnsupportedEncodingException;  class GFG {    public static void main(String args[])        throws UnsupportedEncodingException,               DataFormatException    {          // compress the data          // deflater        Deflater d = new Deflater();          // get the text        String pattern = "Lazyroar", text = "";          // generate the text        for (int i = 0; i < 4; i++)            text += pattern;          // set the input for deflator        d.setInput(text.getBytes("UTF-8"));          // finish        d.finish();          // output bytes        byte output[] = new byte[1024];          // compress the data        int size = d.deflate(output);          // end        d.end();          // end of compression          // use Inflater to get back the original data          // Inflater        Inflater i = new Inflater();          // does the Inflater need input        System.out.println("Input Buffer Empty ? :"                           + i.needsInput());          // set the input for inflator        i.setInput(output);          // output bytes        byte inflater_output[] = new byte[1024];          // uncompress the data        int org_size = i.inflate(inflater_output);          // output of inflater and deflater        System.out.println("Compressed output of deflater : "                           + new String(output));        System.out.println("Compressed output of Inflater : "                           + new String(inflater_output, "UTF-8"));          // does the Inflater need input        System.out.println("Input Buffer Empty ? :"                           + i.needsInput());          // end        i.end();    }} |
Output:
Reference: https://docs.oracle.com/javase/7/docs/api/java/util/zip/Inflater.html#needsInput()

