金額轉換演算法

2021-10-12 01:45:44 字數 1356 閱讀 6816

在我們日常開發過程中,在和金額相關的業務打交道的時候經常需要把阿拉伯數字金額裝換為大寫的金額(例如:壹佰圓整)。本人最經也正好也有這個需求,故整理了乙個簡單的轉換演算法。

/**

* 金額轉為大寫金額工具類

* * @date: 2020/12/2 09:08

*/public class moneychangeutil ;

private static final string digit_billion = ;

/** 數字轉化成整數 */

private static string changedigit(string rmbnum)

// 獲取整數部分

string integer = rmbnum.substring(0, point);

// 處理小數部分

if (point != rmbnum.length())

}string rmb = rmbbuilder.tostring();

// 處理特殊情況,可能不全

if (rmb.startswith("零"))

if (rmb.startswith("一十"))

while (rmb.endswith("零"))

if (rmb.startswith("點"))

if (rmb.endswith("點"))

return rmb;

} /** 位數小於4時,呼叫處理資料 */

private static string readnumber(string rmb)

for (int i = 0; i < 4; i++)

if (ch != '0' && i > 1 && rmb.charat(i - 1) == '0')

if (ch != '0')

}return rmbbuilder.tostring();

} /** 整數部分轉換大寫 */

private static string changeinteger(long lon)

}string rmb = new string(rmbbuilder);

if (rmb.length() != 0 && rmb.startswith("零"))

return rmb;

} /** 人名幣輸出格式 */

public static string changenumberrmb(double rmbnumber)

if (rmb.indexof('點') >= 0) else

} else

return rmb;

}}

進製轉換演算法

寫乙個函式char fun int value,int radix 輸入為乙個整數和乙個代表進製的整數,如71,7。71表示要轉化的數,7代表要轉化成7進製數。輸出乙個字串指標,字串為整數value轉化為radix進製後的數字序列。小於10進製數用0 9表示,10進製 35進製用a z表示。例如71...

進製轉換演算法

int num 745 需要轉換的數 string value num int temp 0 while value.length 0 system.out.println temp m 10演算法是比較簡單的,轉成字串之後,依次取出每個字元,乘以相對應的權重再求和即可。int num 485 需要...

進製轉換 演算法筆記

進製轉換步驟 將p進製轉換為q進製,需要分為兩步 int y 0,product 1 p進製x轉化為10進製的y while x 0 十進位制y轉化為q進製z int z 40 num 0 陣列z存放q的進製數y的每一位,num為位數 dowhile y 0 這樣陣列從高位z num 1 到低位nu...