Maison > Java > javaDidacticiel > Comment analyser en toute sécurité les doubles avec la virgule comme séparateur décimal en Java ?

Comment analyser en toute sécurité les doubles avec la virgule comme séparateur décimal en Java ?

Barbara Streisand
Libérer: 2025-01-05 03:42:08
original
464 Les gens l'ont consulté

How to Safely Parse Doubles with Comma as Decimal Separator in Java?

Comment analyser efficacement le double avec une virgule comme séparateur décimal

Problème :

Valeurs de chaîne représenter des nombres décimaux avec des virgules comme séparateurs, comme "1 234", peut provoquer une exception NumberFormatException lorsque analysé à l'aide de Double.valueOf().

Solution proposée :

Remplacer les virgules par des points en utilisant p = p.replaceAll(",", ".") est un approche valide, mais il existe une méthode plus robuste.

NumberFormat de Java pour Decimal Analyse :

Pour gérer les décimales avec des séparateurs spécifiques aux paramètres régionaux, Java fournit NumberFormat. Considérez le code suivant :

NumberFormat format = NumberFormat.getInstance(Locale.FRANCE);
Number number = format.parse("1,234");
double d = number.doubleValue();
Copier après la connexion

Mise à jour pour les applications multilingues :

Dans les applications multilingues, les séparateurs décimaux spécifiques aux paramètres régionaux sont importants. Pour prendre en charge cela, utilisez NumberFormat.getInstance(Locale.getDefault()) pour obtenir le format des paramètres régionaux actuels.

Avantages de NumberFormat :

  • Gère les virgules et séparateurs spécifiques aux paramètres régionaux.
  • Offre une flexibilité pour diverses entrées formats.
  • Garantit que l'analyse et la représentation sont cohérentes avec les paramètres régionaux définis.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal