BufferedReader.readLine () espera la entrada de la consola

Estoy tratando de leer líneas de texto desde la consola. El número de líneas no se conoce de antemano. El método BufferedReader.readLine () lee una línea, pero después de la última línea espera la entrada de la consola. ¿Qué se debe hacer para evitar esto?

Por favor, vea el fragmento de código a continuación:

    public static String[] getLinesFromConsole() {
    String strLine = "";
    try {
        // Get the object of DataInputStream
        InputStreamReader isr = new InputStreamReader(System.in);
        BufferedReader br = new BufferedReader(isr);
        String line = "";
        while ((line = br.readLine()) != null)
            strLine += line + "~"; //edited

        isr.close();
    } catch (IOException ioe) {
        ioe.printStackTrace();
    }
    return strLine.split("~");
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta