float的存储位是32比特,定义其为7位有效数字,按理32比特存储的数字为-3.4E+38到3.4E+38,那7位有效数字不是太小了,这里的“7位有效数字”究竟是什么意思?
请高手指教,谢谢!

解决方案 »

  1.   

    谢谢For_suzhen,有什么办法可以检验吗?
      

  2.   

    import java.text.*;
    public class c
    {
    public static void main(String [] args)
    {
    float f = 1.23564f;
    NumberFormat n = NumberFormat.getInstance();
    n.setMaximumFractionDigits(2);
    String myString = n.format(f);
    System.out.println(myString);
    }
    }
      

  3.   

    可不可以用System.out.printf();来显示?有这个用法,我不知怎么用...........?
      

  4.   

    jdk1.5里面有,跟c语言的用法一模一样
      

  5.   

    在进行数学运算时,只保留小数点后7位进行运算
    System.out.println(1.0000001f * 1.0000009f);
    System.out.println(1.00000012f * 1.00000092f);
    System.out.println(1.000000123f * 1.000000923f);
    他们的计算结果都相同
      

  6.   

    public class ShowNumber {
        public static void main(String[] args){
            int n = 20, i;
            float root;
            java.text.DecimalFormat format=new java.text.DecimalFormat("#0.00");
            System.out.println("Number       SquareRoot");
            for (i = 0; i <= n; i = i + 2) {
              root = (float) Math.sqrt(i);
              System.out.println(i + "            " + format.format(root));
            }    
        }
    }