❶ java保留兩位小數
網上回答基本上都是復制,最少都是2015年之前的,比較復雜,目前主流簡單
已知一個float x=100.12314f;
保留2位數,則*/都是100;添加這一句後輸出即可
x=(float)(int) (X*100)/100;
publicclassMain{
publicstaticvoidmain(String[]args){
floatx=100.12314f;
x=(float)(int)(X*100)/100;
System.out.printf(x);
}
}
回答這個問題算是自己備忘一下,老是搜索到一大堆亂七八糟復雜化的博客
❷ java 如何保留數據後兩位小數
保留兩位小數,也就是保留到百分位,要看千分位上的數,如果千分位上的數大於等於5,就向百分位上進一位,如果千分位上的數小於5,就捨去。
❸ java 取兩位小數 不要四捨五入怎麼做
以前在遠標做過對一個小數點後有多位數的實數,取兩位小數而不四捨五入,有兩種方案:
乘100再強轉成int,再除以100就得到了想要的數
也可以寫一個小工具,以便以後重復使用,代碼如下:
/**
* a為一個帶有未知位小數的實數
* 對其取b位小數
* @param a
* @param b
* @return
*/
static double getDouble(double a,int b){
int x=0;
int y=1;
for(int i=0;i<b;i++){
y=y*10;
}
System.out.println(y);
x=(int)(a*y);
System.out.println("x="+x);
return (double)x/y;
}
❹ java編程如何保留兩位小數
方式一:
四捨五入
double f = 111231.5585;
BigDecimal b = new BigDecimal(f);
double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
保留兩位小數
---------------------------------------------------------------
方式二:
java.text.DecimalFormat df =new java.text.DecimalFormat("#.00");
df.format(你要格式化的數字);
例:new java.text.DecimalFormat("#.00").format(3.1415926)
#.00 表示兩位小數 #.0000四位小數 以此類推...
方式三:
double d = 3.1415926;
String result = String .format("%.2f");
%.2f %. 表示 小數點前任意位數 2 表示兩位小數 格式後的結果為f 表示浮點型
方式四:
NumberFormat ddf1=NumberFormat.getNumberInstance() ;
void setMaximumFractionDigits(int digits)
digits 顯示的數字位數
為格式化對象設定小數點後的顯示的最多位,顯示的最後位是舍入的
❺ java 怎麼保留2位小數
java保留兩位小數的方法:
方式一:
四捨五入
doublef=111231.5585;
BigDecimalb=newBigDecimal(f);
doublef1=b.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
保留兩位小數
方式二:
java.text.DecimalFormatdf=newjava.text.DecimalFormat("#.00");
df.format(要格式化的數字);
例:newjava.text.DecimalFormat("#.00").format(3.1415926)
#.00表示兩位小數#.0000四位小數以此類推...
方式三:
doubled=3.1415926;
Stringresult=String.format("%.2f");
%.2f%.表示小數點前任意位數2表示兩位小數格式後的結果為f表示浮點型
❻ java、怎樣簡便的保留小數點後兩位。
有兩種情況:
1、只要輸出結果的時候可以用以下方法:
double x1 = 0.026;
System.out.println(String.format("%.2f", x1));
結果:0.03
2、使用數據轉換(4種方法)
//方案一:
get_double = (double)(Math.round(result_value*100)/100.0)
//方案二:
DecimalFormat df = new DecimalFormat("#.##");
get_double = Double.ParseDouble(df.format(result_value));
//方案三:
get_double = Double.ParseDouble(String.format("%.2f",result_value));
//方案四:
BigDecimal bd = new BigDecimalresult_value();
BigDecimal bd2 = bd.setScale(2,BigDecimal .ROUND_HALF_UP);
get_double = Double.ParseDouble(bd2.ToString());
❼ java計算結果 小數點後保留兩位
System.out.println(Double.parseDouble(new
DecimalFormat("#.##").format(a))+
"
"
+
Double.parseDouble(new
DecimalFormat("#.##").format(b)));
把輸出語句換成這個就行了,你試試,如果滿意請及時採納,您的採納是我的動力
❽ java 取兩位小數 不要四捨五入怎麼做
對一個小數點後有多位數的實數,取兩位小數而不四捨五入,有兩種方案:
乘100再強轉成int,再除以100就得到了想要的數
也可以寫一個小工具,以便以後重復使用,代碼如下:
/**
*a為一個帶有未知位小數的實數
*對其取b位小數
*@parama
*@paramb
*@return
*/
staticdoublegetDouble(doublea,intb){
intx=0;
inty=1;
for(inti=0;i<b;i++){
y=y*10;
}
System.out.println(y);
x=(int)(a*y);
System.out.println("x="+x);
return(double)x/y;
}
❾ Java里如何取小數點後2位.(代碼)
public class Str {
double data;
public Str(double data){this.data=data;}
public void method(){
String str=String.valueOf(data);
int pos=str.lastIndexOf('.');
str=str.substring(0,pos+3);
System.out.println(str);
}
public static void main(String args[]){new Str(4.4626236236).method();}
}
❿ java 保留小數點後2位
給你說個比較簡單的方法吧,不知道你有沒用學過c語言,c和c++都有格式化輸出函數:printf()。
Java也有同樣的格式化輸出,針對你的這個問題可以這么寫
System.out.printf("%.2f",d);//d是一個double或float類型,保留小數點後兩位
這只是printf的某一種用法,建議你去看看它的其他更多的用法。