ZHANG H.
2019-08-24 11:24
采纳率: 100%
浏览 528
已采纳

Java中保留小数位数的问题

本人正在自学Java,有些编程题要求输出小数时保留n位小数,想请问各位大神们,在Java中有哪些可以实现以固定精度输出小数的方法?方法最好给多一些并且给出示例代码,谢谢。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • JonathanYan 2019-08-24 11:31
    已采纳

    百度 “java 固定精度输出小数”
    第一页第一篇博客的四种方法

    import java.math.BigDecimal;
        import java.text.DecimalFormat;
        import java.text.NumberFormat;
        public class format {
            double f = 111231.5585;
            public void m1() {
                BigDecimal bg = new BigDecimal(f);
                double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
                System.out.println(f1);
            }
            /**
             * DecimalFormat转换最简便
             */
            public void m2() {
                DecimalFormat df = new DecimalFormat("#.00");
                System.out.println(df.format(f));
            }
            /**
             * String.format打印最简便
             */
            public void m3() {
                System.out.println(String.format("%.2f", f));
            }
            public void m4() {
                NumberFormat nf = NumberFormat.getNumberInstance();
                nf.setMaximumFractionDigits(2);
                System.out.println(nf.format(f));
            }
            public static void main(String[] args) {
                format f = new format();
                f.m1();
                f.m2();
                f.m3();
                f.m4();
            }
    }
    

    建议你去了解一下常用的搜索引擎(百度,谷歌,必应),百度是初学者常用的搜索工具,当然不排除你这种不会用的,这些对代码学习很有帮助,谢谢。

    点赞 打赏 评论
  • Cycain1412 2020-01-29 02:42

    Java也可以格式输出,printf

    点赞 打赏 评论

相关推荐 更多相似问题