Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Como o BufferedReader sabe que deve devolver a próxima linha?

Ola pessoal. Fiquei com uma duvida nesse codigo.

Quando percorremos o arquivo BufferedReader, em nenhum momento dizemos que ele deve pular para proxima linha. Em outras palavras, nao está sendo usado um .nextLine(). Veja:

while(linha != null) {
    System.out.println(linha);
    linha = br.readLine();
}

Eu gostaria de entender melhor, como funciona "por baixo dos panos". Ele apaga a linha que ja foi lida? Como ele sabe que deve ir para próxima?

Desde já, obrigada.

1 resposta
solução!

O método readLine lê a próxima linha toda vez que é chamado (sobrescrevendo o que tinha lido da linha anterior) e retorna nulo se não houver mais nenhuma linha para ler. Basicamente por baixo dos panos ele tem um ponteiro para saber em qual linha ele parou e saber qual é a próxima