Analyser la chaîne en nombre
J'ai une liste qui permet de stocker Nombre objets. La liste sera complétée par l'analyse d'une liste de chaînes de caractères, où chaque chaîne peut représenter n'importe quelle sous-classe de Nombre.
Comment analyser une chaîne de caractères à un générique de nombre, plutôt que de quelque chose de spécifique comme un entier ou flottant?
source d'informationauteur Matt
Vous devez vous connecter pour publier un commentaire.
Nombre ne peut pas être instanciée parce que c'est une classe abstraite. Je voudrais vous recommandons de passer en Chiffres, mais si vous êtes fixé sur les Chaînes, vous pouvez les analyser à l'aide de l'un quelconque des sous-classes,
ou
@Voir NumberFormat
Vous pouvez utiliser le java.texte.La classe NumberFormat. Cette classe possède une méthode parse() qui analyse la chaîne de caractères et retourne le Nombre d'objets.
Un moyen simple est juste de vérifier pour la dot
Pattern.matches("\\.")
. Si elle a un point, analyserFloat.parseFloat()
et vérifier exception. Si il y a une exception analyserDouble.parseDouble()
. Si elle n'a pas un point juste essayer d'analyserInteger.parseInt()
et, si cela échoue déplacer surLong.parseLong()
.vous pouvez obtenir
Number
deString
en utilisant des communes.api d'apache -> https://commons.apache.org/proper/commons-lang/javadocs/api-3.4/index.htmlUtilisation:
Quelque chose comme ce qui suit:
retourne un objet Integer maintien de la valeur de la Chaîne spécifiée.
Entier est spécialisée objet de Nombre