導航:首頁 > 編程語言 > javafloat保留兩位小數

javafloat保留兩位小數

發布時間:2023-07-28 04:34:34

A. java 如何使的float保留2位或者多位小數

表明四捨五入,保留兩位小數即float ft = 134.3435f; int scale = 2;//設置位數 int roundingMode = 4;//表示四捨五入,可以選擇其他舍值方式,例如去尾,等等. BigDecimal bd = new BigDecimal((double)ft); bd = bd.setScale(scale,roundingMode); ft = bd.floatValue();方法2:importjava.text.DecimalFormat;Stringa=newDecimalFormat(###,###,###.##).format(100.12345);即float scale = 34.236323; DecimalFormat fnum = new DecimalFormat(##0.00); String dd=fnum.format(scale); System.out.println(dd); 方法3:最簡單的方法 float b = (float)(Math.round(a*100))/100;(這里的100就是2位小數點,如果要其它位,如4位,這里兩個100改成10000)

B. 請問:在Java語言中如何把一個浮點數精確到小數點後的某幾位

--Math.round()
(double)(Math.round(sd3*10000)/10000.0);

這樣為保持4位

(double)(Math.round(sd3*100)/100.0);

這樣為保持2位.
--BigDecimal
//保留小數點後兩位小數
publicdoubleNumber2(doublepDouble)
{
BigDecimalbd=newBigDecimal(pDouble);
BigDecimalbd1=bd.setScale(2,bd.ROUND_HALF_UP);
pDouble=bd1.doubleValue();
longll=Double.doubleToLongBits(pDouble);

returnpDouble;
}
格式化輸出數字
--NumberFormat
--java.text包中的一些包可以處理這類問題。下面的簡單範例使用那些類解決上面提出的問題:
importjava.text.NumberFormat;
importjava.util.Locale;
publicclassDecimalFormat1{
publicstaticvoidmain(Stringargs[]){
//得到本地的預設格式
NumberFormatnf1=NumberFormat.getInstance();
System.out.println(nf1.format(1234.56));
//得到德國的格式
NumberFormatnf2=
NumberFormat.getInstance(Locale.GERMAN);
System.out.println(nf2.format(1234.56));
}
}
--DecimalFormat
importjava.text.DecimalFormat;
importjava.util.Locale;
publicclassDecimalFormat2{
publicstaticvoidmain(Stringargs[]){
//得到本地的預設格式
DecimalFormatdf1=newDecimalFormat("####.000");
System.out.println(df1.format(1234.56));
//得到德國的格式
Locale.setDefault(Locale.GERMAN);
DecimalFormatdf2=newDecimalFormat("####.000");
System.out.println(df2.format(1234.56));
}
}

C. java怎樣用float 保留2位有效小數 例如:64.02 64.00

public class Hello{
public static void main(String[] args){
float f = 12f;
java.text.DecimalFormat df = new java.text.DecimalFormat("#0.00");
String sf = df.format(f);
System.out.println();
}
}

D. java float類型默認小數點後幾位

你好,float,double默認值為0.0;
java中float,double的小數點後面限制位數的方法
我以一個小數點後面保留兩位為例:(都是四捨五入)
1.
import Java.text.DecimalFormat;

double x=23.5455;
NumberFormat format1=NumberFormat.getNumberInstance() ;
format1.setMaximumFractionDigits(2);
String s = format1.format(x);
2.
import java.text.DecimalFormat;

DecimalFormat format2 = new DecimalFormat( "0.00 ");
double x=23.5455;
x = Double.parseDouble(format2.format(x));

最近想到第三種方法:
3.下面我以小數點後面兩位為例,先擴大100倍進行四捨五入,然後除以100轉為double就可以,我喜歡這方法,就可以不用去記住其他方法了。***3位小數為1000,4位則10000
double x=23.5455;
x = (double)Math.round((double)(x*100))/100;

E. 請問java提供什麼方法實現將一個浮點數,四捨五入只保留小數點後兩位

第一:從資料庫讀出時可以進行操作,將讀出的數據進行處理後輸出,這里可以用資料庫提供的方法。這里不多提。
第二:也可以用JAVA進行處理,方法很多。
這里說兩種吧:
第一
BigDecimal bd = new BigDecima("5.14881");
bd = bd.setScale(2,BigDecimal.ROUND_HALF_UP); System.out.println(bd);

第二
static double convert(double value){
long l1 = Math.round(value*100); //四捨五入
double ret = l1/100.0; //注意:使用 100.0 而不是 100
return ret;
}

public static void main(String[] args) {
// BigDecimal bd = new BigDecimal("3.14159265");
// bd = bd.setScale(2,BigDecimal.ROUND_HALF_UP);
double bd = convert(3.14559);

System.out.println(bd);
}

F. java中float類型保留2位小數,第3位值>0就向第二位進1 怎樣實現

可以直接通過判斷第三位的值,如果第三位乘以1000,之後對10求余,如果大於0,直接給第二位加上一個值「10」,在除以1000即可。
float f1 = 3.222f;
int num = (int) (f1 * 1000);
if (num % 10 > 0)
f1 = (num -num % 10 + 10 * 1.0f) / 1000.0f;
else
f 1= num * 1.0f / 1000.0f;
System.out.println(f);
輸出結果:3.23.

閱讀全文

與javafloat保留兩位小數相關的資料

熱點內容
固態繼電器單片機 瀏覽:978
反編譯exe課件 瀏覽:58
gps測量加密法 瀏覽:958
量價絕殺pdf 瀏覽:480
循環壓縮機振動高的原因 瀏覽:396
教育機構網站源碼 瀏覽:541
程序員租客被騙 瀏覽:399
安卓機用了三年會怎麼樣 瀏覽:294
圖片怎麼轉pdf加密 瀏覽:448
解壓縮軟體免安裝版 瀏覽:962
安卓簡訊如何存檔 瀏覽:143
汽車導航不讀文件夾 瀏覽:107
全球雲伺服器如何注冊 瀏覽:884
udp直播流如何在伺服器里播放器 瀏覽:591
macbrew安裝php 瀏覽:425
點特徵提取演算法 瀏覽:502
python彈窗顯示輸入的文字 瀏覽:751
python數字和中文互轉 瀏覽:639
汽車空調壓縮機外殼 瀏覽:458
大型伺服器都是採用什麼模式 瀏覽:5