亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java String.format 兩位小數,以點為千位分隔符,以逗號為小數點分隔符

Java String.format 兩位小數,以點為千位分隔符,以逗號為小數點分隔符

絕地無雙 2022-12-15 11:14:36
我需要格式化一個精確到小數位的浮點數,“。” 作為千位分隔符和“,”作為小數點分隔符,如下所示:“1.234,56”我試過String.format("%,f", myFloat)了,但它給了我太多的小數位,就像這樣:“1.150,000000”。另外,String.format("%,2f", myFloat)也沒有用。
查看完整描述

1 回答

?
米脂

TA貢獻1836條經驗 獲得超3個贊

您可以嘗試使用DecimalFormat類根據需要格式化您的數字:


float number = 12344.12f;


DecimalFormatSymbols symbols = new DecimalFormatSymbols();

symbols.setGroupingSeparator('.');

symbols.setDecimalSeparator(','); // to be sure it is ','


DecimalFormat decimalFormat = new DecimalFormat();

decimalFormat.setDecimalFormatSymbols(symbols);

decimalFormat.setMaximumFractionDigits(2);


String format = decimalFormat.format(number);


System.out.println(format);

輸出是:


12.344,12

編輯


對于固定小數位試試這個:


DecimalFormatSymbols symbols = new DecimalFormatSymbols();

symbols.setGroupingSeparator('.');

symbols.setDecimalSeparator(','); // to be sure it is ','


DecimalFormat decimalFormat = new DecimalFormat("#.###.00");

decimalFormat.setDecimalFormatSymbols(symbols);


String format = decimalFormat.format(number);


查看完整回答
反對 回復 2022-12-15
  • 1 回答
  • 0 關注
  • 355 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號