SoloCodigo
		Programación General => Java => Mensaje iniciado por: lissi14 en Domingo 26 de Septiembre de 2004, 02:18
		
			
			- 
				Hola Programadores:
Tengo una Duda ,como hago para saber si un numero que ingreso por medio de la interfaz grafica es del tipo long o float 
Se como distinguir integer del double  seria asi 
Tengo una clase que se llama Valida 
public class Valida {
   public boolean es_Vacio(String s) {
      return (s.length()==0);
   }
   public boolean es_Num(String s) {
      if (es_Vacio(s)==true)return false;
      int i=0;
      for (i=0;i<=s.length()-1;i++){
         char c =s.charAt(i);
      if((c<48)||(c>57)||(c!=46)) break;
   }
      return (i==s.length());
   }
   public boolean es_Entero(String s) {
      
      if (es_Num(s)==false) return false;
      int n = s.indexOf(".");
      return (n<0);
   }
}
Lo que me falta es saner como hago para distinguir un float y un long 
GracIAS POR SU AYUDA
LISSI
lissi14@hotmail.com
			 
			
			- 
				en realidad lo que hace tu programa esta un poco mal.
ya que distingue un tipo flotante (que puede ser float o double) de un entero que puede ser (int, long, etc...)
recuerda que cada tipo de dato tiene un rango especifico.
entonces, lo qe tienes que hacer , es saber si entra dentreo de ese rango, si no, es otro tipo.
el valor float alamcena datos una precision aprox de 7 digitos (32 bits)
y el valor long comprende valores entre  
-9223372036854775808 y +9223372036854775807
entonces solo checa que entre dentro de ese rango y que no tenga ningun punto (.), si es asi, es long, si no es float.