java怎么将数字1转换为大写一

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java怎么将数字1转换为大写一相关的知识,希望对你有一定的参考价值。

如下是一个将阿拉伯数字转为汉字的类,需要者可收藏到自己的util类库中以备不时之需。

public class ArabicToChineseUtils
static String[] units = "", "十", "百", "千", "万", "十万", "百万", "千万", "亿", "十亿", "百亿", "千亿", "万亿" ;
static char[] numArray = \'零\', \'一\', \'二\', \'三\', \'四\', \'五\', \'六\', \'七\', \'八\', \'九\' ;

/**
* @param args
*/
public static void main(String[] args)
int num = 245000006;
String numStr = foematInteger(num);
print("num= " + num + ", convert result: " + numStr);
double decimal = 245006.234206;
print("============================================================");
String decStr = formatDecimal(decimal);
print("decimal= " + decimal + ", decStr: " + decStr);


private static String foematInteger(int num)
char[] val = String.valueOf(num).toCharArray();
int len = val.length;
StringBuilder sb = new StringBuilder();
for (int i = 0; i < len; i++)
String m = val[i] + "";
int n = Integer.valueOf(m);
boolean isZero = n == 0;
String unit = units[(len - 1) - i];
if (isZero)
if (\'0\' == val[i - 1])
// not need process if the last digital bits is 0
continue;
else
// no unit for 0
sb.append(numArray[n]);

else
sb.append(numArray[n]);
sb.append(unit);


return sb.toString();


private static String formatDecimal(double decimal)
String decimals = String.valueOf(decimal);
int decIndex = decimals.indexOf(".");
int integ = Integer.valueOf(decimals.substring(0, decIndex));
int dec = Integer.valueOf(decimals.substring(decIndex + 1));
String result = foematInteger(integ) + "." + formatFractionalPart(dec);
return result;


private static String formatFractionalPart(int decimal)
char[] val = String.valueOf(decimal).toCharArray();
int len = val.length;
StringBuilder sb = new StringBuilder();
for (int i = 0; i < len; i++)
int n = Integer.valueOf(val[i] + "");
sb.append(numArray[n]);

return sb.toString();


private static void print(Object arg0)
System.out.println(arg0);

参考技术A 先用汉字定义数组变量,再根据下标转换出来。 参考技术B Map m = new HashMap();
m.put(1,"一");
m.put(2,"二");
m.put(3,"三");
....

System.out.println(m.get(1));本回答被提问者采纳
参考技术C 楼上的说的可以。

如何自动把数字转换成大写的金钱?

参考技术A

Excel 根据数字金额自动生成大写金额的操作方法:

一、首先点击选中需要同步大写金额的单元格,按Ctrl+!打开单元格格式窗口。

二、打开单元格格式窗口后,点击左侧的“特殊”,右边使用“中文大写数字”,点击“确定”。

三、然后在大写金额单元格中输入“=A2”,点击回车。

四、这时即可自动生成和A2单元格数值相同的大写数字。

五、当A2单元格内的数值被修改后,B2单元格内的大写数值也会自动同步更改。

以上是关于java怎么将数字1转换为大写一的主要内容,如果未能解决你的问题,请参考以下文章

VBA 如何将数字转换为中文大写

java怎样将大写字母转换成小写字母

用java把阿拉伯数字转换成中文数字,怎么做

java字符转换

Java 关于中文大写金额与阿拉伯数字 互相转换的问题(eclipse版)

用java写一个将大写的MAC地址转化为小写,切把分割用的-转化为:,首先判断输入是不是为MAC地址,在转换