java 分轉元與元轉分實現操作

分轉元

private String fenToYuan(String amount){
  NumberFormat format = NumberFormat.getInstance();
  try{
    Number number = format.parse(amount);
    double temp = number.doubleValue() / 100.0;
    format.setGroupingUsed(false);
    // 設置返回的小數部分所允許的最大位數
    format.setMaximumFractionDigits(2);
    amount = format.format(temp);
  } catch (ParseException e){
    e.printStackTrace();
  }
  return amount;
}

轉換為分

private String yuanToFen(String amount){
  NumberFormat format = NumberFormat.getInstance();
  try{
    Number number = format.parse(amount);
    double temp = number.doubleValue() * 100.0;
    format.setGroupingUsed(false);
    // 設置返回數的小數部分所允許的最大位數
    format.setMaximumFractionDigits(0);
    amount = format.format(temp);
  } catch (ParseException e){
    e.PrintStackTrace();
  }
  return amount;
}

補充:java 分轉元 decimal格式化

我就廢話不多說瞭,大傢還是直接看代碼吧~

public class NumberUtils {
  public static String format(double f) {
    DecimalFormat df = new DecimalFormat("#.##");
    return df.format(f) ;
  }
  public static String fenToYuan(int f) {
    return format(f/100.0) ;
  }
  public static void main(String[] args) {
    System.out.println(fenToYuan(3));
    System.out.println(fenToYuan(33));
    System.out.println(fenToYuan(333));
    System.out.println(fenToYuan(3333));
    System.out.println(fenToYuan(33333));
  }
}

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。

推薦閱讀: