Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/05/2014, 11:28
avi_tr
 
Fecha de Ingreso: noviembre-2013
Mensajes: 7
Antigüedad: 10 años, 5 meses
Puntos: 0
Como detectar cadena en blanco

Hola a todos, soy principiante en java. Resulta que tengo que hacer un ejercicio que se basa en el uso del "try cacht", en él, el usuario introduce una cadena de caracteres por teclado y el programa le dice si es un entero, un float, o una cadena.

El problema es que el programa tiene que acabar cuando el usuario introduce una cadena en blanco (sea cual sea su tamaño), he probado de hacer lo siguiente pero solo me da cuando la cadena es un único espacio en blanco:

Código Java:
Ver original
  1. import java.util.Scanner;
  2. public class ejercicio_14 {
  3.  
  4.     public static void main(String[] args) {
  5.        
  6.         String palabra;
  7.        
  8.        
  9.         Scanner sc= new Scanner(System.in);
  10.         do{
  11.        
  12.            
  13.                 System.out.println("Introduce algo por teclado: ");
  14.                 palabra = sc.nextLine();
  15.                
  16.            
  17.        
  18.            
  19.             try {
  20.                    
  21.                 int num= Integer.parseInt(palabra);
  22.                 System.out.println(num + " es un numero entero");
  23.            
  24.             } catch (NumberFormatException a) {
  25.                 try {
  26.                    
  27.                     float flo = Float.parseFloat(palabra);
  28.                     System.out.println(flo + " es un numero decimal");
  29.                    
  30.                 } catch (NumberFormatException e) {
  31.                     System.out.println("es una cadena de caracteres");
  32.                 }
  33.             }
  34.            
  35.            
  36.         }while(!palabra.equals(" "));
  37.        
  38.         sc.close();
  39.        
  40.        
  41.     }
  42.  
  43.    
  44. }