Java 如何以简单格式显示双值?

Java 如何以简单格式显示双值?,java,Java,我有一些这样的计算 public class Florida { public static void main(String arg[]){ double value = 9223372036854775807l; double ans = 0; ans = ans + value * 2.00 /1000; System.out.println("Hello : "+ans); } } Hello : 1.844674407370955

我有一些这样的计算

public class Florida {
public static void main(String arg[]){

    double value = 9223372036854775807l;
    double ans = 0;
            ans = ans + value * 2.00 /1000;
    System.out.println("Hello : "+ans);
  }
}
Hello : 1.8446744073709552E16
但我得到的答案是这样的

public class Florida {
public static void main(String arg[]){

    double value = 9223372036854775807l;
    double ans = 0;
            ans = ans + value * 2.00 /1000;
    System.out.println("Hello : "+ans);
  }
}
Hello : 1.8446744073709552E16
我需要简单的数字格式。

使用
printf()
%f

System.out.printf("Hello : %f\n", ans);
您可以通过调整格式说明符来更改有效位数;例如,以下仅打印出整数部分:

System.out.printf("Hello : %.0f\n", ans);

Mahek、printf()和sprintf()函数将帮助您实现这一点,或者在类中提供帮助。在给定的页面上,您还可以找到将来可能对您非常有用的其他*printf()标志。:)

你为什么要用双人床?使用long不是更简单吗?或者这是家庭作业吗?或者写几个浮动部分:System.Console.WriteLine(“{0:0.000}”,ans)