<pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

          <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

          <p id="bbfd9"></p>

          <p id="bbfd9"><cite id="bbfd9"></cite></p>

            <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

            <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
            <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
            java語言

            JAVA中小數點后保留兩位的方法有哪些

            時間:2025-05-30 15:25:40 java語言 我要投稿
            • 相關推薦

            JAVA中小數點后保留兩位的方法有哪些

              相信大家在平時做項目時,可能會有這樣的業務需求:頁面或界面上展示的數據保留小數點后兩位。 JAVA中小數點后保留兩位的方法有哪些?下面百分網小編帶大家一起來看看詳細內容,希望對大家有所幫助!想了解更多相關信息請持續關注我們應屆畢業生考試網!

              1.代碼:

              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();

              }

              }

              2.輸出結果:

              111231.56

              111231.56

              111231.56

              111,231.56

              這里我們提供了一個工具類,定義浮點數的加、減、乘、除和四舍五入等運算方法。以供參考。

              源文件MathExtend.java:

              import java.math.BigDecimal;

              public class MathExtend

              {

              //默認除法運算精度

              private static final int DEFAULT_p_SCALE = 10;

              /**

              * 提供精確的加法運算。

              * @param v1

              * @param v2

              * @return 兩個參數的和

              */

              public static double add(double v1, double v2)

              {

              BigDecimal b1 = new BigDecimal(Double.toString(v1));

              BigDecimal b2 = new BigDecimal(Double.toString(v2));

              return b1.add(b2).doubleValue();

              }

              /**

              * 提供精確的加法運算

              * @param v1

              * @param v2

              * @return 兩個參數數學加和,以字符串格式返回

              */

              public static String add(String v1, String v2)

              {

              BigDecimal b1 = new BigDecimal(v1);

              BigDecimal b2 = new BigDecimal(v2);

              return b1.add(b2).toString();

              }

              /**

              * 提供精確的減法運算。

              * @param v1

              * @param v2

              * @return 兩個參數的差

              */

              public static double subtract(double v1, double v2)

              {

              BigDecimal b1 = new BigDecimal(Double.toString(v1));

              BigDecimal b2 = new BigDecimal(Double.toString(v2));

              return b1.subtract(b2).doubleValue();

              }

              /**

              * 提供精確的減法運算

              * @param v1

              * @param v2

              * @return 兩個參數數學差,以字符串格式返回

              */

              public static String subtract(String v1, String v2)

              {

              BigDecimal b1 = new BigDecimal(v1);

              BigDecimal b2 = new BigDecimal(v2);

              return b1.subtract(b2).toString();

              }

              /**

              * 提供精確的乘法運算。

              * @param v1

              * @param v2

              * @return 兩個參數的積

              */

              public static double multiply(double v1, double v2)

              {

              BigDecimal b1 = new BigDecimal(Double.toString(v1));

              BigDecimal b2 = new BigDecimal(Double.toString(v2));

              return b1.multiply(b2).doubleValue();

              }

              /**

              * 提供精確的乘法運算

              * @param v1

              * @param v2

              * @return 兩個參數的數學積,以字符串格式返回

              */

              public static String multiply(String v1, String v2)

              {

              BigDecimal b1 = new BigDecimal(v1);

              BigDecimal b2 = new BigDecimal(v2);

              return b1.multiply(b2).toString();

              }

              /**

              * 提供(相對)精確的除法運算,當發生除不盡的情況時,精確到

              * 小數點以后10位,以后的數字四舍五入,舍入模式采用ROUND_HALF_EVEN

              * @param v1

              * @param v2

              * @return 兩個參數的商

              */

              public static double pide(double v1, double v2)

              {

              return pide(v1, v2, DEFAULT_p_SCALE);

              }

              /**

              * 提供(相對)精確的除法運算。當發生除不盡的情況時,由scale參數指

              * 定精度,以后的數字四舍五入。舍入模式采用ROUND_HALF_EVEN

              * @param v1

              * @param v2

              * @param scale 表示需要精確到小數點以后幾位。

              * @return 兩個參數的商

              */

              public static double pide(double v1,double v2, int scale)

              {

              return pide(v1, v2, scale, BigDecimal.ROUND_HALF_EVEN);

              }

              /**

              * 提供(相對)精確的除法運算。當發生除不盡的情況時,由scale參數指

              * 定精度,以后的數字四舍五入。舍入模式采用用戶指定舍入模式

              * @param v1

              * @param v2

              * @param scale 表示需要精確到小數點以后幾位

              * @param round_mode 表示用戶指定的舍入模式

              * @return 兩個參數的商

              */

              public static double pide(double v1,double v2,int scale, int round_mode){

              if(scale < 0)

              {

              throw new IllegalArgumentException("The scale must be a positive integer or zero");

              }

              BigDecimal b1 = new BigDecimal(Double.toString(v1));

              BigDecimal b2 = new BigDecimal(Double.toString(v2));

              return b1.pide(b2, scale, round_mode).doubleValue();

              }

              /**

              * 提供(相對)精確的除法運算,當發生除不盡的情況時,精確到

              * 小數點以后10位,以后的數字四舍五入,舍入模式采用ROUND_HALF_EVEN

              * @param v1

              * @param v2

              * @return 兩個參數的商,以字符串格式返回

              */

              public static String pide(String v1, String v2)

              {

              return pide(v1, v2, DEFAULT_p_SCALE);

              }

              /**

              * 提供(相對)精確的除法運算。當發生除不盡的情況時,由scale參數指

              * 定精度,以后的數字四舍五入。舍入模式采用ROUND_HALF_EVEN

              * @param v1

              * @param v2

              * @param scale 表示需要精確到小數點以后幾位

              * @return 兩個參數的商,以字符串格式返回

              */

              public static String pide(String v1, String v2, int scale)

              {

              return pide(v1, v2, DEFAULT_p_SCALE, BigDecimal.ROUND_HALF_EVEN);

              }

              /**

              * 提供(相對)精確的除法運算。當發生除不盡的情況時,由scale參數指

              * 定精度,以后的數字四舍五入。舍入模式采用用戶指定舍入模式

              * @param v1

              * @param v2

              * @param scale 表示需要精確到小數點以后幾位

              * @param round_mode 表示用戶指定的舍入模式

              * @return 兩個參數的商,以字符串格式返回

              */

              public static String pide(String v1, String v2, int scale, int round_mode)

              {

              if(scale < 0)

              {

              throw new IllegalArgumentException("The scale must be a positive integer or zero");

              }

              BigDecimal b1 = new BigDecimal(v1);

              BigDecimal b2 = new BigDecimal(v2);

              return b1.pide(b2, scale, round_mode).toString();

              }

              /**

              * 提供精確的小數位四舍五入處理,舍入模式采用ROUND_HALF_EVEN

              * @param v 需要四舍五入的數字

              * @param scale 小數點后保留幾位

              * @return 四舍五入后的結果

              */

              public static double round(double v,int scale)

              {

              return round(v, scale, BigDecimal.ROUND_HALF_EVEN);

              }

              /**

              * 提供精確的小數位四舍五入處理

              * @param v 需要四舍五入的數字

              * @param scale 小數點后保留幾位

              * @param round_mode 指定的舍入模式

              * @return 四舍五入后的結果

              */

              public static double round(double v, int scale, int round_mode)

              {

              if(scale<0)

              {

              throw new IllegalArgumentException("The scale must be a positive integer or zero");

              }

              BigDecimal b = new BigDecimal(Double.toString(v));

              return b.setScale(scale, round_mode).doubleValue();

              }

              /**

              * 提供精確的小數位四舍五入處理,舍入模式采用ROUND_HALF_EVEN

              * @param v 需要四舍五入的數字

              * @param scale 小數點后保留幾位

              * @return 四舍五入后的結果,以字符串格式返回

              */

              public static String round(String v, int scale)

              {

              return round(v, scale, BigDecimal.ROUND_HALF_EVEN);

              }

              /**

              * 提供精確的小數位四舍五入處理

              * @param v 需要四舍五入的數字

              * @param scale 小數點后保留幾位

              * @param round_mode 指定的舍入模式

              * @return 四舍五入后的結果,以字符串格式返回

              */

              public static String round(String v, int scale, int round_mode)

              {

              if(scale<0)

              {

              throw new IllegalArgumentException("The scale must be a positive integer or zero");

              }

              BigDecimal b = new BigDecimal(v);

              return b.setScale(scale, round_mode).toString();

              }

              }

            【JAVA中小數點后保留兩位的方法有哪些】相關文章:

            java使double類型保留兩位小數的方法09-19

            學習java的方法有哪些07-01

            Java讀取郵件的方法有哪些05-31

            java寫入文件的方法有哪些10-05

            JAVA中終止線程的方法有哪些07-26

            java序列化的方法有哪些10-06

            Java File類有哪些常用方法07-27

            Java編程節省內存的方法有哪些08-10

            java輸入數據流的方法有哪些06-04

                    <pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

                    <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

                    <p id="bbfd9"></p>

                    <p id="bbfd9"><cite id="bbfd9"></cite></p>

                      <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

                      <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
                      <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
                      飘沙影院