格式化數字java
⑴ java裡面如何格式化數字
java提供了格式化double類型的方法:NumberFormat.getInstance().format(a);這個是java內置的函數可以直接格式化double類型的數字;NumberFormat要導入import java.text.NumberFormat;即可。
⑵ Java中的數字格式化.....myFormat.format(value);,在JDK1.6文檔中沒發現只有一個參數的format()方法啊
可能是創建了一個類繼承了Formatter,然後重載了該類的format方法,使得這個方法直接一個參數。代碼可能是這樣的:
publicStringformat(Stringvalue){
returnthis.format(value,Object...args);//此處的格式的方法可能使用了特定的方法。
}
⑶ java 怎樣將string 格式化
在java中,將浮點數格式化為string,一般使用DecimalFormat。DecimalFormat的用法示例如下:DecimalFormatdf=newDecimalFormat();doubledata=1234.56789;System.out.println("格式化之前的數字:"+data);Stringstyle="0.0";//定義要顯示的數字的格式df.applyPattern(style);//將格式應用於格式化器System.out.println("採用style:"+style+"格式化之後:"+df.format(data));style="00000.000kg";//在格式後添加諸如單位等字元df.applyPattern(style);System.out.println("採用style:"+style+"格式化之後:"+df.format(data));//模式中的"#"表示如果該位存在字元,則顯示字元,如果不存在,則不顯示。style="##000.000kg";df.applyPattern(style);System.out.println("採用style:"+style+"格式化之後:"+df.format(data));//模式中的"-"表示輸出為負數,要放在最前面style="-000.000";df.applyPattern(style);System.out.println("採用style:"+style+"格式化之後:"+df.format(data));//模式中的","在數字中添加逗號,方便讀數字style="-0,000.0#";df.applyPattern(style);System.out.println("採用style:"+style+"格式化之後:"+df.format(data));//模式中的"E"表示輸出為指數,"E"之前的字元串是底數的格式,//"E"之後的是字元串是指數的格式style="0.00E000";df.applyPattern(style);System.out.println("採用style:"+style+"格式化之後:"+df.format(data));//模式中的"%"表示乘以100並顯示為百分數,要放在最後。style="0.00%";df.applyPattern(style);System.out.println("採用style:"+style+"格式化之後:"+df.format(data));//模式中的"\u2030"表示乘以1000並顯示為千分數,要放在最後。style="0.00\u2030";//在構造函數中設置數字格式DecimalFormatdf1=newDecimalFormat(style);//df.applyPattern(style);System.out.println("採用style:"+style+"格式化之後:"+df1.format(data));下面是總結:格式化之前的數字:1234.56789採用style:0.0格式化之後:1234.6採用style:00000.000kg格式化之後:01234.568kg採用style:##000.000kg格式化之後:1234.568kg採用style:-000.000格式化之後:-1234.568採用style:-0,000.0#格式化之後:-1,234.57採用style:0.00E000格式化之後:1.23E003採用style:0.00%格式化之後:123456.79%採用style:0.00‰格式化之後:1234567.89‰
⑷ java DecimalFormat格式化數字
沒有區別
但如果是0.##
和
0.00的話就可以看出區別了
假設要轉換的數字是5
使用0.00轉換後結果是5.00
而如果是0.##結果就是5
⑸ java怎麼格式化輸出數字
使用System.out.printf(格式化字元串,參數)
int a = 5;
數字的話System.out.printf("%d",a);
//"%"表示進行格式化輸出,"%"之後的內容為格式的定義。
System.out.printf("%f",d);//"f"表示格式化輸出浮點數。
System.out.println();
System.out.printf("%9.2f",d);//"9.2"中的9表示輸出的長度,2表示小數點後的位數。
System.out.println();
System.out.printf("%+9.2f",d);//"+"表示輸出的數帶正負號。
System.out.println();
System.out.printf("%-9.4f",d);//"-"表示輸出的數左對齊(默認為右對齊)。
System.out.println();
System.out.printf("%+-9.3f",d);//"+-"表示輸出的數帶正負號且左對齊。
System.out.println();
System.out.printf("%d",i);//"d"表示輸出十進制整數。
System.out.println();
System.out.printf("%o",i);//"o"表示輸出八進制整數。
System.out.println();
System.out.printf("%x",i);//"d"表示輸出十六進制整數。
System.out.println();
System.out.printf("%#x",i);//"d"表示輸出帶有十六進制標志的整數。
System.out.println();
System.out.printf("%s",s);//"d"表示輸出字元串。
System.out.println();
System.out.printf("輸出一個浮點數:%f,一個整數:%d,一個字元串:%s",d,i,s);
//可以輸出多個變數,注意順序。
System.out.println();
System.out.printf("字元串:%2$s,%1$d的十六進制數:%1$#x",i,s);
//"X$"表示第幾個變數。
⑹ java數字格式化
用 %3.2f格式化後, 替換逗號即可;
同理, 用 #,##0.00 格式化後, 替換, 為空格即可.
你的需求:
doublex=1234.5;
DecimalFormatdf=newDecimalFormat("#,###.0");
Stringxs=df.format(x);
xs=xs.replace(",","").replace(".",",");
System.out.println(xs);
輸出
1234,5
⑺ java數字如何格式化
public static String xxx(String aa) {
String flag = "";
if (aa.length() > 4) {
flag = aa.substring(0, 3) + "." + aa.substring(3, 4);
} else {
flag = aa;
}
return flag;
}
//當然可以繼續判斷大於5為四捨五入
⑻ 怎麼在java中設置數字格式化
格式你應該能看明白?
DecimalFormatdf=newDecimalFormat("###,###.000");
System.out.println(df.format(123213861273L));
⑼ java 格式化數字 格式化要顯示的數字 比方4.00就讓它顯示為4 ;4.02就顯示4.02 用什麼方法
如果是在頁面展示你可以直接用jstl標簽(不知道你搜一下就懂了很好用),如果是後台操作你可以用一樓所說,如果是decimal類型的話就直接可以格式化,他有個方法setscale
⑽ java輸入一串數字,將數字格式化,例如輸入1990921000 -〉 1,990,921,000
使用Java的printf即可,代碼如下:
importjava.util.Scanner;
publicclassMain
{
publicstaticvoidmain(String[]args)
{
try(Scannersc=newScanner(System.in))
{
System.out.printf("%,d",sc.nextInt());
}
}
}