Respuestas

2012-10-19T22:03:51+02:00

La cosa es que BufferedReader maneja un 'Buffer' es decir que primero captura en memoria todo lo que recibe y cuando éste se llena, manda el buffer a donde tenga que; es preferente usar la clase Scanner o si quieres manejar Streams la clase InputStream.

----------- EDITADO --------------

Con Scanner (debes importar java.util.Scanner):

Scanner teclado = new Scanner (System.in);
Double nota = teclado.nextDouble();


import java.io.*;

public class Curso 
{
public final static int TOTAL_EST = 5;
private double[] notas;
private double temporal;

public Curso() 
{
notas = new double[TOTAL_EST];
for( int i = 0; i < notas.length ; i++ )
{
notas[ i ] = 0.0; 
}
}
public void capturarNota() throws IOException
{
System.out.println("--------Digite la nota-----------...");
BufferedReader entrada = new BufferedReader(new InputStreamReader(System.in));
for(int i = 0 ; i < notas.length ; i++)
{
temporal = Double.parseDouble(entrada.readLine());
if (temporal >= 0 && temporal < 6)
{
notas[i] = Double.parseDouble(entrada.readLine()); … 
}
}
}
public void mostrarNotas() throws IOException
{
for(int i = 0; i< notas.length; i++)
{
System.out.println(notas[i]);
}
}
public static void main(String[] args) throws IOException
{
Curso logica = new Curso();
logica.capturarNota();
logica.mostrarNotas();

2012-10-19T22:33:38+02:00

Es una clase derivada de Reader y permite hacer exactamente lo mismo que BufferedInputStream, pero permite trabajar con caracteres ojala q te ayude