The ready() method of Reader Class in Java is used to check whether this Reader is ready to be read or not. It returns a boolean which states if the reader is ready.
Syntax:
public void ready()
Parameters: This method does not accepts any parameters
Return Value: This method returns a boolean value which tells if this Reader is ready to be read or not. It return true if it is ready. Else it returns false.
Exception: This method throws IOException if some error occurs while input-output.
Below methods illustrates the working of ready() method:
Program 1:
// Java program to demonstrate// Reader ready() method  import java.io.*;import java.util.*;  class GFG {    public static void main(String[] args)    {          try {              String str = "GeeksForGeeks";              // Create a Reader instance            Reader reader                = new StringReader(str);              // Check if the Reader is            // ready to be read using ready()            System.out.println("Is Reader ready "                               + "to be read: "                               + reader.ready());              // Get the character            // to be read from the stream            int ch;              // Read the first 5 characters            // to this reader using read() method            // This will put the str in the stream            // till it is read by the reader            for (int i = 0; i < 5; i++) {                ch = reader.read();                System.out.println("\nInteger value "                                   + "of character read: "                                   + ch);                System.out.println("Actual "                                   + "character read: "                                   + (char)ch);            }              reader.close();        }        catch (Exception e) {            System.out.println(e);        }    }} |
Is Reader ready to be read: true Integer value of character read: 71 Actual character read: G Integer value of character read: 101 Actual character read: e Integer value of character read: 101 Actual character read: e Integer value of character read: 107 Actual character read: k Integer value of character read: 115 Actual character read: s
Program 2:
// Java program to demonstrate// Reader ready() method  import java.io.*;import java.util.*;  class GFG {    public static void main(String[] args)    {          try {            String str = "GeeksForGeeks";              // Create a Reader instance            Reader reader                = new StringReader(str);              reader.close();              // Check if the Reader is            // ready to be read using ready()            System.out.println("Is Reader ready "                               + "to be read: "                               + reader.ready());              // Get the character            // to be read from the stream            int ch;              // Read the first character            // to this reader using read() method            // This will put the str in the stream            // till it is read by the reader            ch = reader.read();            System.out.println("\nInteger value "                               + "of character read: "                               + ch);            System.out.println("Actual "                               + "character read: "                               + (char)ch);              reader.close();        }        catch (Exception e) {            System.out.println(e);        }    }} |
java.io.IOException: Stream closed
Reference: https://docs.oracle.com/javase/9/docs/api/java/io/Reader.html#ready–
