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.