Comment imprimer un double avec deux décimales dans Android?

C'est peut-être une question stupide, mais je ne peux pas deviner comment la résoudre si elle ne crée pas de méthode. Peut-être y a-t-il une "façon naturelle" de le faire, comme C, par exemple. Voici le problème:

J'ai un var:

  • Est-ce toujours le cas que l'Android ne décharge jamais les cours?
  • Définir la visibilité dans Menu par programme Android
  • Les sources centrales des images NinePatch?
  • Pourquoi onResume () est-il appelé quand une activité démarre?
  • Que signifie «->» (flèche) dans le graphique de dépendance de Gradle?
  • Dans une action snackbar, comment puis-je être sûr de pouvoir supprimer en permanence un enregistrement supprimé par soft de la base de données?
  • double a; 

    Et je veux le montrer uniquement avec 2 ou 3 décimales. Quand j'essaie de le montrer:

     Text.setText("Value of a: " + String.valueOf(a)); 

    Il donne quelque chose comme:

    Valeur de: 5.234966145

    Et je voudrais juste

    Valeur de: 5.23

    Sans changer la valeur réelle d'un, il affiche le nombre approximatif mais fonctionne avec le nombre réel.

  • RecyclerVoir le style au niveau du thème
  • Android 7.0 (Nougat) Le mode Doze arrête le service Web
  • Pourquoi "System.out.println" ne fonctionne-t-il pas dans Android?
  • Android, quelle est la différence entre Android Support Repository vs Android Support Library vs Google Repository vs Google Play Services
  • Le service USSD ne fonctionne pas
  • Android - comment obtenir android.R.anim.slide_in_right
  • 6 Solutions collect form web for “Comment imprimer un double avec deux décimales dans Android?”

     Text.setText( String.format( "Value of a: %.2f", a ) ); 

    Vous pouvez utiliser un DecimalFormat , ou String.format("%.2f", a);

    Avant d'utiliser DecimalFormat, vous devez utiliser l'importation suivante ou votre code ne fonctionnera pas:

     import java.text.DecimalFormat; 

    Le code pour le formatage est:

     DecimalFormat precision = new DecimalFormat("0.00"); // dblVariable is a number variable and not a String in this case txtTextField.setText(precision.format(dblVariable)); 

    Pour afficher le chiffre jusqu'à deux décimales, il existe deux possibilités: 1) Tout d'abord, vous voulez seulement afficher les chiffres décimales si c'est là. Par exemple – i) 12.10 pour être affiché comme 12.1, ii) 12.00 pour être affiché comme 12. Ensuite, utilisez-

     DecimalFormat formater = new DecimalFormat("#.##"); 

    2) Deuxièmement, vous souhaitez afficher les chiffres décimales indépendamment du nombre décimal. Par exemple -i) 12.10 à afficher en 12.10. Ii) 12 à afficher en 12.00. Ensuite, utilisez-

     DecimalFormat formater = new DecimalFormat("#.00"); 

    Utilisez celui-ci:

     DecimalFormat form = new DecimalFormat("0.00"); etToll.setText(form.format(tvTotalAmount) ); 

    Attention: les données doivent être en format décimal (tvTotalAmount)

     textView2.setText(String.format("%.2f", result)); 

    et

     DecimalFormat form = new DecimalFormat("0.00"); textView2.setText(form.format(result) ); 

    … provoque une erreur "NumberFormatException" dans les paramètres régionaux pour l'Europe car elle définit le résultat comme une virgule au lieu d'un point décimal – une erreur se produit lorsque textView est ajouté au numéro dans editText. Les deux solutions fonctionnent parfaitement dans les États-Unis et au Royaume-Uni.

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.