1. 程式人生 > >Java中控制小數位數

Java中控制小數位數

方法一:使用BigDecimal

public class BigDecimalDemo {
	public static void main(String[] args) {
		BigDecimal decimal = new BigDecimal(Math.PI);
		decimal = decimal.setScale(10, BigDecimal.ROUND_HALF_EVEN);
		System.out.println(decimal);
		decimal = decimal.setScale(5, BigDecimal.ROUND_HALF_EVEN);
		double num = decimal.doubleValue();
		System.out.println(decimal);
		System.out.println(num);
	}
}

執行結果:

3.1415926536
3.14159
3.14159

方法二:使用DecimalFormat,注意DecimalFormat一般用來在顯示或者其它情況下使用
public class DecimalFormatDemo {
	public static void main(String[] args) {
		DecimalFormat df = new DecimalFormat("0.000");
		double num = Math.PI;
		String numStr = df.format(num);
		System.out.println(num);
		System.out.println(numStr);
	}
}

執行結果:
3.141592653589793
3.142


相關推薦

Java控制小數位數

方法一:使用BigDecimal public class BigDecimalDemo { public static void main(String[] args) { BigDecima

JAVA控制double型別小數點後位數的方法

本篇為原創,需要轉載或引用的朋友請註明來源,非常感謝!!!! 有時候我們需要控制double型別小數點後的位數,下面簡單介紹一下: 假如現在想把某一個double的值限制在小數點後的4位,可以這樣做:  import java.text.DecimalFormat; pu

Java指定保留小數位數的方法

小數位數 mode down ceil package style spa 直接 obj package com.qiyuan.util; import java.math.BigDecimal; import java.math.RoundingMode; impor

delphi Edit 控制最大值,只能輸入數字型 控制小數位數

delphi語言受眾多程式設計師追捧,主要原因之一就是它有很多第三方的控制元件可供使用。很多資深的delphi程式設計師都把自己積累的函式、過程等設計成控制元件,以方便使用,提高開發效率。 本文通過一個只允許輸入數字、並且可以設定輸入值範圍和小數點位數的編輯框控制元件的設計,詳細介紹了控制元件的實現方法。該

extjs 可編輯numberfield 控制小數位數

Ext.create( 'Ext.form.Panel' , {      renderTo: Ext.getBody(),      item

十進位制小數或帶小數的十進位制轉二進位制--控制小數位數輸出(C語言)

十進位制小數或帶小數的十進位制轉二進位制: 十進位制小數轉換成二進位制小數採用"乘2取整,順序排列"法。具體做法是:用2乘十進位制小數,可以得到積,將積的整數部分取出,再用2乘餘下的小數 部分,又得到一個積,再將積的整數部分取出,如此進行,直到積中的小數部分為零,或者達到所要求的精度為止

java解決小數精度問題

對象 big public 創建 構造 sys 字符串 out 精度 public class TestDouble { public static void main(String[] args) { Double d1 = 0.1;

(轉)C++保留小數位數的方法

iomanip的作用: 主要是對cin,cout之類的一些操縱運運算元,比如setfill,setw,setbase,setprecision等等。它是I/O流控制標頭檔案,就像C裡面的格式化輸出一樣.以下是一些常見的控制函式的: dec 置基數為10 相當於"%d" hex 置基數為16 相當於"%X"

Java保留指定小數位數

方式一: import java.math.BigDecimal; /* * 計算並輸出1/3.0的值,保留小數點後2位 * 方式一:四捨五入 */ public class Main{ public static void main(String[] args){ doubl

Twig控制保留小數位數

number_format 該number_format過濾器格式的數字 引數: decimal: 要顯示的小數點數 decimal_point: 用於小數點的字元 thousand_sep: 用於千位分隔符的字元 舉例:

在JSP使用formatNumber控制要顯示的小數位數

先引入標籤庫 <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> 比如保留小數點後兩位小數: <fmt:formatNumber value="${xxx}" type="number" max

java 控制輸出小數位數

   DecimalFormat 類主要靠 # 和 0 兩種佔位符號來指定數字長度。0   表示如果位數不足則以 0 填充,# 表示只要有可能就把數字拉上這個位置。    * */   DecimalFormat b = new DecimalFormat("#0.00000");   System.ou

Java的線程狀態轉換和線程控制常用方法

img sta () throw line star height style 技術 Java 中的線程狀態轉換:    【註】:不是 start 之後就立刻開始執行, 只是就緒了(CPU 可能正在運行其他的線程). 【註】:只有被 CPU 調度之後,線程才開始執行, 當

Java的switch語句後面的控制表達式的數據類型

pop track strong size mod har java 7 span string類型 Java中的switch語句後面的控制表達式的數據類型 1、byte 2、char 3、short 4、int 5、枚舉類型 6、Java 7同

Java的高精度整數和高精度小數

整數測試 div string pac 高精 int trac print log 在實際編碼中,會遇到很多高精度的事例,比如,在計算金錢的時候就需要保留高精度小數,這樣計算才不會有太大誤差: 在下面的代碼中,我們驗證了,當兩個float型的數字相加,得到的結果和我們的預期

梁勇(Danniel Liang) java教材例題:java程序購買額按稅率求營業稅 java數值保留2位小數的方法

can margin package ann pack ati sea static rate package com.swift; import java.util.Scanner; public class PurchaseTaxDecimalsTwo { public

javadouble類型顯示兩個小數,比如12.00

概念 format pan doc 而不是 興趣 compareto 就會 decimal Double類型的數據如何保留兩位小數? 各位大蝦,現有Double類型的數據,如何轉換為保留兩位小數的數,返回值的類型仍然是Double類型的,而不是字符串類型。 比如 0

java如何獲取一個double的小數位數

spl for value 字符 小數 容易 its google 客戶 前言 看標題是不是覺得這是一個很簡單的問題,我一開始也是這麽認為的,但是實際情況下,在各種情況下我們都進行了測試,發現很多實際情況是無法不盡如人意的。 方法分析 當前能想到的比較容易有下面幾種

java小數處理,bigDecimal類應用

add opened 對象 spl eof 轉換成 () double ply 1、構造一個BigDecimal對象: 1 //創建一個BigDecimal對象,初始化必須使用字符串,因為用數值初始化會得到近似值,不準確 2 BigDec

Java 的運算符和流程控制相關內容的理解

判斷 控制 color ++ 等於 代碼 最小 二進制 輸入   接著之前的運算符方面,今天主要回顧運算符的一些計算、優先級方面的內容,以及一些流程控制中if-else 方面的知識。 賦值運算符 (=、+=、-=、*=、/=、%=、&=、|=、^=、<&l