Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/09/2010, 20:50
krosty_ufc
 
Fecha de Ingreso: octubre-2008
Mensajes: 47
Antigüedad: 16 años, 3 meses
Puntos: 0
Problema system.in.read()

Buenas que tal estoy teniendo un problema con este metodo.
Al ingresarlo por primera vez, anda perfecto, me deja escribir el dato, pero al estar en un cichlo while, este se repite nuevamente, y ya la segunda vez no me deja ingresar nada :S, luego cunado llega por 3era vez al while si me deja ingresar un nuevo dato, y asi otra vez no etc.
Dejo el codigo

Código:
while (continua == 1)
   {
       while(existe == 0)
        {
        System.out.println("\n Ingrese letra: ");
        opcion =(char)System.in.read(); 
        opcion = Character.toLowerCase(opcion);
        
                
              for(Object aux : usadas)
               {
                 if(aux.equals(opcion))
                 {
                  System.out.println("Este caracter ya fue usado!!!");
                  existe = 0;
                  break;
                 }
                 else
                 {
                   existe = 1;
                 }
               }
                  if(existe == 1)
                 {
                  usadas.add(opcion);
                 }
            }
             existe = 0;
             int i = 0;
             
             while((i <= tamaño) && (i != -1))
                {
                   if(palabraSeleccionada.indexOf(opcion,i) != -1)
                   {
                     i = palabraSeleccionada.indexOf(opcion,i);
                     letrasEncontradas[i]=i;
                     i++;
                   }
                   else
                   {
                       i = -1;
                   }
                }

             int a = 0;
             
             while(a < tamaño)
              {
                if((a<letrasEncontradas.length) &&(a == letrasEncontradas[a]))
                 {
                   System.out.print(opcion);
                   a++;
                 }
                 else
                {
               System.out.print("-");
               a++;
                  }
              }