本文實例講述了JAVA實現數字大寫金額轉換的方法。分享給大家供大家參考。具體如下:
例子:實現將阿拉伯數字的金額轉換成中文大寫金額的形式,例如:
¥1011 → 壹仟零壹拾壹元整。
大寫數字為:零、壹、貳、叁、肆、伍、陸、柒、捌、玖、拾、佰、仟、萬、億
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
import java.io.*; import java.lang.String; public class change { public static void main(String agrs[]) { //Money用于存放輸入的金額數 long Money= 0 ; String Mon[]={ "零" , "壹" , "貳" , "叁" , "肆" , "伍" , "陸" , "柒" , "捌" , "玖" }; String Mon1[]={ "拾" , "佰" , "仟" , "萬" , "拾萬" , "百萬" , "仟萬" , "億" , "拾億" , "百億" , "仟億" }, je[]= new String[ 30 ]; //je[]數組用于存放數字金額被轉換后的數字 //n用于測試您是否有金額轉換 int n=agrs.length; if (n== 0 ) System.out.println( "請輸入需要轉換的金額:" ); //將輸入的金額轉化成long型的數據 else { Money=Long.parseLong(agrs[n- 1 ]); } //bitt用于存放第幾個需轉換的金額數字, int bitt= 0 ,j,k=- 1 ,i= 0 ; //轉換過程 while (Money!= 0 ) { bitt=( int )(Money%10L); //計算出每個數字對應的大寫值 for (j= 0 ;j<Mon.length;j++) { if (j==bitt) break ; } //將相應的值存入je[]中 if (k!=- 1 ){je[i]=Mon1[k];i++;} je[i]=Mon[j];i++; Money=Money/ 10 ; k++; if (Money== 0 ) { //輸出轉換后的金額 System.out.print( "您輸入的金額為:" ); i--; for (;i>= 0 ;i--) System.out.print(je[i]); } } } } |
希望本文所述對大家的java程序設計有所幫助。