这个问题涉及到float 和double型的计算误差问题
去这里看:http://expert.csdn.net/Expert/topic/2490/2490138.xml?temp=.9250299

解决方案 »

  1.   

    System.out.println(String str);//参数应该是String类的吧
      

  2.   

    我只要保留5位有效数字就可以了
    那也就解决了精度不准的问题了,Math.cos(Math.PI/2)就是0.000000了
    关键我不知道怎么解决保留有效位数字
    import java.text.*;
    NumberFormat num = NumberFormat.getNumberInstance();
    num.setMaximumFractionDigits(2);
    System.out.println(num.format(1.255555)); 
    这样好像可以了,但我还是加不到程序里面去
      

  3.   

    试试System.out.println(float(int(Math.cos(Math.PI/2)*100000))/100000);
      

  4.   

    xianliti()
    那个是我改的,结果对的,但我不知道该怎么加到我的代码中去楼上的方法不错