java中double型別如果小數點後為零顯示整數,否則保留
//方法一
public static String doubleTrans1(double num)
{
if(num % 1.0 == 0)
{
return String.valueOf((long)num);
}
return String.valueOf(num);
}
//方法二
public static String doubleTrans2(double num)
{
if(Math.round(num)-num==0)
{
return String.valueOf((long)num);
}
return String.valueOf(num);
}
相關推薦
java中double型別如果小數點後為零顯示整數,否則保留
//方法一 public static String doubleTrans1(double num) { if(num % 1.0 == 0) { return String.valueOf((long)num); } return String.value
Java中double型別的資料精確到小數點後兩位
轉自:http://blog.sina.com.cn/s/blog_69bd73800100yaej.html 多餘位四捨五入,四種方法 一: double f = 111231.5585; BigDecimal b = new BigDecimal(f); do
java中Double型別的運算精度丟失的問題 (小數點多出99999999999999)
在使用Java,double 進行運算時,經常出現精度丟失的問題,總是在一個正確的結果左右偏0.0000**1。 特別在實際專案中,通過一個公式校驗該值是否大於0,如果大於0我們會做一件事情,小於0我們又處理其他事情。 這樣的情況通過double計算出來的結果去和0比較
java中double型別的記憶體表示
轉自[http://bbs.csdn.net/topics/260050279] 浮點數儲存的位元組格式如下: 地址 +0 +1 +2 +3 內容 SEEE EEEE EMMM MMMM MMMM MMMM MMMM MMMM 這裡 S 代表符號位,1是負,0是正 E 偏移1
Java中Double型別的精確計算
複製程式碼 import java.math.BigDecimal; public class DoubleUtil { private static final int DEF_DIV_SCALE = 5; // 小數點後的保留位數 /** * Dou
java中double型別顯示兩個小數,比如12.00
本在載自:http://blog.csdn.net/chaozhidan/article/details/8161862 Double型別的資料如何保留兩位小數? 各位大蝦,現有Double型別的資料,如何轉換為保留兩位小數的數,返回值的型別仍然是Double型別的,而不
java中double型別資料加減操作精度丟失問題及解決方法
double型別資料加減操作精度丟失問題 今天在專案中用到double型別資料加減運算時,遇到了一個奇怪的問題,比如1+20.2+300.03,理論上結果應該是321.23,其實結果並不是這樣。 public double add() {
Java中double型別精度丟失問題
首先,之所以double浮點數型別中會出現精度不準確這個問題,是因為浮點數在計算機的儲存方法導致的,要想具體瞭解的話,可以檢視《計算機組成原理》這本書,裡面有比較詳盡的解答。 接下來由一道題來引出接下來要講的這個問題: 對任意給定的一個doubl
Java中double型別比較大小或相等的方法
在Java中int型別資料的大小比較可以使用雙等號,double型別則不能使用雙等號來比較大小,如果使用的話得到的結果將永遠是不相等,即使兩者的精度是相同的也不可以。下面介紹兩種比較double資料是否相等的方法。 第一種方法:轉換成字串 如果要比較的兩個double資料的
Java中double型別四捨五入的方法總結
//方法一: BigDecimal bd= new BigDecimal(a); Double b = bd.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); System.out.println("方法一: "+b); //方法二: Double my
java float double型別做小數點加減運算不準確
一提到Java裡面的商業計算,我們都知道不能用float和double,因為他們無法 進行精確計算。但是Java的設計者給程式設計人員提供了一個很有用的類BigDecimal,他可以完善float和double類無法進行精確計算的缺 憾。BigDecimal類位於java.maths類包下。首先我們來看下
Java中double型別保留兩位小數
java中對double型別的小數經常會有小數點後邊保留一位小數或者保留兩位小數的需求。 javaAPi中提供了一個專門的類BigDecimal,用來對超過16位有效位的數進行精確的運算。 使用步驟:
JAVA中double型別計算精度控制
偶遇一個問題,進行如下計算 public class Demo { public static void main(String[] args) { int i = 1; double d = i*0.005; System.out.println(d);
Java中Double保留後小數位的幾種方法
絕對值 解決 quest getpara 直接 mil pri 表單提交 bsp 最近做個小實驗,其中一部分要求將表單提交的數據轉換為double,這個功能其實很簡單直接一句Double.parseDouble(request.getParameter("chinese")
java中double轉化為百分數
1.使用於大多數的情況 import java.text.NumberFormat; /** * Double轉化為百分數 * @author ganhongliang * @date 2018年10月1日 */ public class DoubleToPerc
Java 中double和float型別計算丟失精度問題總結
背景 問題發生在某天中午,當我訂單付完款後,不想要了就點選了全額退款,但是給我的提示確實 “您輸入的金額不正確”,我就納悶了,為什麼不能退?看了下程式碼,然後就發現了問題... 1、bigdecimal 轉換成小數計算有誤差 真實專案中校驗退款金額是否超過訂單實付款
java 中基本型別之間的轉換 String double long int
將String轉化為Double、Long、Integer 一、java中字串轉換成Double型別 Double doubleType = Double.parseDouble(String) 二、java中字串轉換成Long型別 Long
java中不能使用小數點(.)來作為分隔符
tro 使用 一個 特殊 split() 不能 歧義 strong 結果 split()括號裏是一個String的參數,所以一定要符合這種:split(".")形式,即點‘.‘要用雙引號""括起來"."在java中已經被定義為特殊的字符,所以想要在split()中使用"."
java中double的精度去哪了[轉]
blank ble 四舍五入 img http 得到 .html 浮點 .com 我們知道,浮點數值采用二進制系統表示,二進制系統無法精確表示1/10,就好像十進制無法精確表示1/3 。 所以,我們采用四舍五入/保留小數位方式以獲得精簡數值。 那麽,問題來了
[轉]Java中怎樣把數組轉換為ArrayList
com supported array 文檔 java 靜態 拷貝 light size 方法匯總: Element[] array = {new Element(1),new Element(2),new Element(3)}; ArrayList<E