自己练习数组而已,以后完善。
package com.test.array;
public class Num2RMB{
private static String[] chn={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};
private static String[] numUnit={"拾","佰","仟","万","拾万","佰万","仟万","亿"};
private static String[] rmbUnit={"分","角"};
public static String[] divide(double num){
String[] numStrs=null;
long intPart=(long)num;
int decPart=(int) Math.round((num-intPart)*100);
numStrs=new String[]{intPart+"",String.valueOf(decPart)};
return numStrs;
}
public static String[] divide(String str){
String[] numStrs=null;
numStrs=str.split("\\.");
return numStrs;
}
public static String converseIntPart(String numstr){
String intstr="";
int nl=numstr.length();
for(int i=0;i<nl;i++){
int n=numstr.charAt(i)-48;
if((i!=nl-1)&&(n!=0)){
intstr+=chn[n]+numUnit[nl-i-2];
}else if(i==nl-1){
intstr+=chn[n];
}
}
intstr+="元";
return intstr;
}
public static String converseDecPart(String numstr){
String decstr="";
int nl=numstr.length();
for(int i=0;i<nl;i++){
int n=numstr.charAt(i)-48;
if(n!=0){
decstr+=chn[n]+rmbUnit[nl-i-1];
}
}
return decstr;
}
public static String wholeStr(String intpart,String decpart){
String result=intpart+decpart;
return result;
}
public static void main(String[] args){
String[] strs1=divide(180200888.09);
System.out.println("float to string-----------------------");
for(String s:strs1){
System.out.println(s);
}
String[] strs2=divide("230003100.20");
System.out.println("string to string-----------------------");
for(String s:strs2){
System.out.println(s);
}
double target1=180200888.09;
String target2="230003100.20";
String[] mid1=divide(target1);
String result1=wholeStr(converseIntPart(mid1[0]),converseDecPart(mid1[1]));
System.out.println("------------------\n"+result1);
String[] mid2=divide(target2);
String result2=wholeStr(converseIntPart(mid2[0]),converseDecPart(mid2[1]));
System.out.println("------------------\n"+result2);
}
}
分享到:
相关推荐
将数字金额转化为汉字大写金额,用于理财程序的金额转化。
将数字金额转换为中文大写金额将数字金额转换为中文大写金额将数字金额转换为中文大写金额
C#中将数字金额转化为大写金额。C#中将数字金额转化为大写金额。
数字转换成金额大写,实例,文本框输入数字,标签显示大写金额
水晶报表数字金额转中文大写,用于水晶报表中将数字金额转换为中文大写的金额
输入字符,通过正则验证是否为金额不超过万亿精确到小数点后两位,然后将数字转换为大写 包括后台java正则验证及前台js验证 请输入一个数字(精确到小数点后两位): fdsa54325.54 fdsa54325.54 false 请输入一个...
C#数字金额转换为大写中文金额,很有用的,帮你解决疑虑的电子书,呵呵相当有用哦!!!!
将金额数字转化为大写,格式规范标准。① 当没有零头时自动加xxxx元整 ② 小数能够精确到角、分、厘 ③ 能够处理1亿一下金额数字 ④ 使用方法:numToBig(金额),返回大写字符串
将数字转为中文金额的大写方式(Java版) 博文链接:https://lovinchan.iteye.com/blog/202768
sqlserver数字转金额大写,输入数字返回汉字大写
人民币数字转换成汉字大写 android Java 运行效率
1、该dll能将阿拉伯数字转换为汉字数字或者中文大写金额。例如1234567.07可转换为: “一百二十三万四千五百六十七点零七”或“壹佰贰拾叁万肆仟伍佰陆拾柒圆零柒分”。 目前支持正负千亿以内(整数部分不超过12位)...
mysql 函数,可以将数字转换为中文大写形式。大写数字是中国特有的数字书写方式,利用与数字同音的汉字取代数字,以防止数目被涂改。 据考证,大写数字最早是由武则天发明,后经朱元璋改进完善。
JS将数字转换为大写汉字人民币
用java实现将阿拉伯数字转换为金额的汉字大写
本代码示例了如何将一个整数型数字转换为中文大写金额的算法。
读入一个浮点数值,转换为金额大写。整数只显示整数部分。含连续0只输出一个“零”。整圆显示“整”。
将金额转换成大写金额,提供封装类 及 例子
将数字金额转成人民币大写,如1999.00,转为:壹仟玖佰玖拾玖元整;2000.00,转为:贰仟元整;2000.01,转为:贰仟元零壹分
js中使用Arabia_to_Chinese方法,如: var a=Arabia_to_Chinese(1183.5); //返回壹仟壹佰捌拾叁元零伍角整