import java.io.*;
import java.lang.IllegalArgumentException;
public class ConvertNum{
/**
* 把金额阿拉伯数字转换为汉字表示,小数点后四舍五入保留两位
* 还有一种方法可以在转换的过程中不考虑连续0的情况,然后对最终的结果进行一次遍历合并连续的零
*/
public static String [] ChineseNum = new String[]{"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};
public static String NumToChinese(double num){
if(num > 99999999999999.99 || num < -99999999999999.99)
throw new IllegalArgumentException("参数值超出允许范围 (-99999999999999.99 ~ 99999999999999.99)!");
boolean negative = false;//正负标号
if(num<0){
negative = true;
num = num*(-1);
}
long temp = Math.round(num*100);
int numFen=(int)(temp%10);//分
temp=temp/10;
int numJiao = (int)(temp%10);//角
temp=temp/10;
//此时temp只包含整数部分
int [] parts =new int[20];//将金额整数部分分为在0-9999之间数的各个部分
int numParts
java实现金额数字转换为中文大写
最新推荐文章于 2023-12-21 14:35:02 发布
这是一个Java程序,用于将金额数字转换成中文大写形式。程序支持小数点后两位的四舍五入,并能处理从-99999999999999.99到99999999999999.99之间的数值。代码中定义了汉字数字数组,并通过拆分整数部分、处理小数部分,实现了数字到中文大写的转换。
摘要由CSDN通过智能技术生成