1. 程式人生 > 其它 >java實現保留兩位小數的幾種方法

java實現保留兩位小數的幾種方法

技術標籤:Java

1、使用String.format

@Test
    public void test(){
        double s=123.2334;
        System.out.println(String.format("%.2f", s));
    }

在這裡插入圖片描述

2、使用DecimalFormat的format方法

#.00 表示兩位小數 #.0000四位小數

 @Test
    public void test1(){
        double s=123.2334;
        DecimalFormat decimalFormat =
new DecimalFormat("#.00"); System.out.println(decimalFormat.format(s)); }

在這裡插入圖片描述

3、使用BigDecimal的setScale方法

public void test2(){
        double s=123.2334;
        BigDecimal bigDecimal = new BigDecimal(s);
        System.out.println(bigDecimal.setScale(2,BigDecimal.ROUND_HALF_UP));
    }

在這裡插入圖片描述

4、使用NumberFormat的setMaximumFractionDigits方法

@Test
    public void test3(){
        double s=123.2334;
        NumberFormat instance = NumberFormat.getInstance();
        instance.setMaximumFractionDigits(2);
        System.out.println(instance.format(s));
    }

在這裡插入圖片描述

5、使用Formattert的format方法

 @Test
    public
void test4(){ double s=123.2334; Formatter formatter = new Formatter(); System.out.println(formatter.format("%.2f",s)); }

在這裡插入圖片描述

package atguigu.java;

import org.junit.Test;

import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.util.Formatter;

/**
 * @author Luo Zhigang
 * @date 2021/2/2 11:29
 */
public class GetDecimal {
    @Test
    public void test(){
        double s=123.2334;
        System.out.println(String.format("%.2f", s));
    }
    @Test
    public void test1(){
        double s=123.2334;
        DecimalFormat decimalFormat = new DecimalFormat("#.00");
        System.out.println(decimalFormat.format(s));
    }
    @Test
    public void test2(){
        double s=123.2334;
        BigDecimal bigDecimal = new BigDecimal(s);
        System.out.println(bigDecimal.setScale(2,BigDecimal.ROUND_HALF_UP));
    }

    @Test
    public void test3(){
        double s=123.2334;
        NumberFormat instance = NumberFormat.getInstance();
        instance.setMaximumFractionDigits(2);
        System.out.println(instance.format(s));
    }
    @Test
    public void test4(){
        double s=123.2334;
        Formatter formatter = new Formatter();
        System.out.println(formatter.format("%.2f",s));
    }
}