Java字符串格式问题。点后的两个元素

标签 java double

我有一个自定义键盘,我尝试将输入值转换为 double 。例如,输入 1 为 0.01。我的主要目标是始终只显示点后的两个元素,但如果输入是 80 那么结果是 0.8 ,但我希望它是 0.80 这是我的来源

 userEntered = userEntered + pressedString;
 Double dd = Double.parseDouble(userEntered);
 dd = dd / 100;
 amountText.setText(dd.toString());

我在单击按钮时清除这样的输入值

if (userEntered.length() > 0) {
    userEntered = userEntered.substring(0, userEntered.length() - 1);
    Double dd = Double.parseDouble(userEntered);
    dd = dd / 100;
    amountText.setText(dd.toString());
}

我该如何解决问题?谢谢大家

最佳答案

您可以在 Java 中使用 DecimalFormat 类。

请看一下 https://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html

示例:

DecimalFormat f = new DecimalFormat("##.00");
System.out.println(f.format(yourDouble));

关于Java字符串格式问题。点后的两个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49189546/

相关文章:

java - Java Swing-如何在可见帧B时如何使用帧A?

java - JSESSIONID 使用的编码?

java - Android 中的 OkHttpClient 给出 405 请求方法不支持错误?

c# - .NET 上的 double 问题

c++ - 如何将 QVector<double> 转换为 QByteArray 并进行压缩

java - 根据一些预定义的类别标记单词

java - Eclipse Juno - 关闭 package-info.java 生成?

java - 使用 DocumentFilter 仅接受 JTextField 中的 double 值

java - 显示数字小数部分的问题

c# - 为什么没有M后缀的c#小数不能初始化?