private static String DigitUppercaseStrings[] = new String[] { “零”, “壹”, “贰”, “叁”, “肆”, “伍”, “陆”, “柒”, “捌”, “玖” };

private static String moneyStrings[] = new String[] { "", "拾", "佰", "仟", "万", "拾", "佰", "仟", "亿", "拾", "佰", "仟","万", "拾", "佰", "仟", "亿", "拾", "佰", "仟", "万", "拾", "佰", "仟" };/*** 将货币转换为大写形式(类内部调用)* * @param val* @return String*/
private static String PositiveIntegerToHanStr(String NumStr) {// 输入字符串必须正整数,只允许前导空格(必须右对齐),不宜有前导零String RMBStr = "";boolean lastzero = false;boolean hasvalue = false; // 亿、万进位前有数值标记int len, n;len = NumStr.length();if (len > 15)return "数值过大!";for (int i = len - 1; i >= 0; i--) {if (NumStr.charAt(len - i - 1) == ' ')continue;n = NumStr.charAt(len - i - 1) - '0';if (n < 0 || n > 9)return "输入含非数字字符!";if (n != 0) {if (lastzero)RMBStr += DigitUppercaseStrings[0]; // 若干零后若跟非零值,只显示一个零// 除了亿万前的零不带到后面// if( !( n==1 && (i%4)==1 && (lastzero || i==len-1) ) )// 如十进位前有零也不发壹音用此行if (!(n == 1 && (i % 4) == 1 && i == len - 1)) // 十进位处于第一位不发壹音RMBStr += DigitUppercaseStrings[n];RMBStr += moneyStrings[i]; // 非零值后加进位,个位为空hasvalue = true; // 置万进位前有值标记} else {if ((i % 8) == 0 || ((i % 8) == 4 && hasvalue)) // 亿万之间必须有非零值方显示万RMBStr += moneyStrings[i]; // “亿”或“万”}if (i % 8 == 0)hasvalue = false; // 万进位前有值标记逢亿复位lastzero = (n == 0) && (i % 4 != 0);}if (RMBStr.length() == 0)return DigitUppercaseStrings[0]; // 输入空字符或"0",返回"零"return RMBStr;
}

/**
* 将货币转换为大写形式
*
* @param val
* 传入的数据
* @return String 返回的人民币大写形式字符串
*/
public static String numToRMBStr(double val) {
String SignStr = “”;
String TailStr = “”;
long fraction, integer;
int jiao, fen;

 if (val < 0) {val = -val;SignStr = "负";}if (val > 99999999999999.999 || val < -99999999999999.999)return "数值位数过大!";// 四舍五入到分long temp = Math.round(val * 100);integer = temp / 100;fraction = temp % 100;jiao = (int) fraction / 10;fen = (int) fraction % 10;if (jiao == 0 && fen == 0) {TailStr = "整";} else {TailStr = DigitUppercaseStrings[jiao];if (jiao != 0)TailStr += "角";// 零元后不写零几分if (integer == 0 && jiao == 0)TailStr = "";if (fen != 0)TailStr += DigitUppercaseStrings[fen] + "分";}// 下一行可用于非正规金融场合,0.03只显示“叁分”而不是“零元叁分”// if( !integer ) return SignStr+TailStr;return SignStr + PositiveIntegerToHanStr(String.valueOf(integer)) + "元" + TailStr;
}

java将货币转换为大写形式相关推荐

  1. java将字符串转换为大写或小写

    java字符串大小写转换 .toLowerCase();//转成小写 .toUpperCase();//转成大写 String str = "aaaaaBBcccc"; Strin ...

  2. 如何在XSLT中将字符串转换为大写或小写形式

    查阅w3school的文档,你会看到XSLT提供了两个系统函数用于转换字符串的大小写形式:upper-case()和lower-case().但是这两个函数是针对于XSLT2.0以上版本的,Micro ...

  3. java 字符串首字符大写_Java字符串为大写

    java 字符串首字符大写 Java String to uppercase conversion can be done using toUpperCase() method. 可以使用toUppe ...

  4. 将输入金额转化为发票大写形式

    package test; import java.util.Scanner; /*  * 3.编写程序将表示钱数的数字转换为大写形式,例如:1200.53 壹仟贰佰零元伍角三分:  */ publi ...

  5. java把小写变大写_用java实现人民币小写变大写的方法

    用java语言可以实现人民币小写转换为大写吗?如何实现呢?下面常见的用java实现人民币小写变大写的方法可以说是最精简的了,希望大家可以学习下. 这里介绍一个通过取余的办法来实现将人民币小写转换为大写 ...

  6. 将数字货币金额转换为大写格式(java)

    基本思想: 将数字转化为字符串,以小数点为界限拆为:整数,小数点,小数,三各部分,各个部分转换为大写格式,最后拼接在一起.(主要运用了字符串的拆分,替换,转化) 1.导入的包 import java. ...

  7. 计算机大写改成拼音形式,Excel将汉字名字,转换为大写的拼音,全称

    打开excel 添加个模块(操作:打开excel--按alt+F11--插入--模块)将下列内容复制粘贴至模块中,点击"保存".然后在Excel中就可以转换了. Function ...

  8. Java黑皮书课后题第4章:*4.17(一个月的天数)编写一个程序,提示用户输入一个年份和一个月份名称的前3个字母(第一个字母使用大写形式),显示该月中的天数。如果月份非法则显示出错信息

    *4.17(一个月的天数)编写一个程序,提示用户输入一个年份和一个月份名称的前3个字母(第一个字母使用大写形式),显示该月中的天数.如果月份非法则显示出错信息 题目 题目概述 破题 运行示例 代码 题 ...

  9. php 0改成百 千_【面试题】小数转换为人民币大写形式,PHP实现。

    前段时间面试,有个编程题目是将小数转换为人民币大写形式,最近用PHP多,就写一段,全当记个日志吧.未完待续. $newline = ' '; $RMB = array('', '壹', '贰', '叁 ...

最新文章

  1. 读硕/博期间你积累了哪些重要的科研经验?
  2. 设计模式-行为-职责链
  3. CRDT——解决最终一致问题的利器
  4. 【安卓开发 】Android初级开发(九)Android中封装View提供接口供点击事件回调的方法及使用
  5. Struts2中Action接收参数的方法
  6. weui上传组件的图片封装到formdata_自定义toast-ui富文本组件的图片黏贴上传
  7. 钉钉现身数博会:增长200% 年内要覆盖450万家企业组织
  8. 2021年PMP考试最新通关宝典
  9. jdk1.8新特性:函数式接口、方法引用、函数式编程、常用函数式接口
  10. 基于51单片机+DS18B20温度测温器+LCD1602显示
  11. 2021东南亚跨境电商平台之马来西亚热门电商平台排名TOP10
  12. 疯狂的程序员 兼职(下)
  13. win10浏览器加载很慢_Win10 IE浏览器的网页加载速度很慢总是卡死怎么办
  14. oracle 会话数上不去_(一)UDS诊断服务中的诊断会话控制(DiagnosticSessionControl,0x10)...
  15. Bluemix开发作品——魔芋相机、小沃、Etrans-Bluemix-专题视频课程
  16. XMUOJ·纸片选择
  17. 使用离线语音夜灯联动控制家里其他灯具和电器
  18. 10个流行常用的Django第三方包-大江狗推荐
  19. python判断图片中含有另外一张图
  20. Linux面试题汇总-2

热门文章

  1. 2021年电工(中级)模拟考试题库及电工(中级)模拟考试系统
  2. 调用高德地图api 实现地址解析
  3. 【转】win10 远程时快捷键失灵
  4. wav文件 服务器失败,修复:Windows 7 中的 Windows Media Player 出现问题或错误,在 .wav 文件结束之前停止播放...
  5. 自建网盘到底有多香?都可以干些啥?
  6. 征服Node.js 7.x视频课程(1):Node.js入门-李宁-专题视频课程
  7. js正则表达式之URL格式匹配
  8. 黄博推荐的专注人工智能的几个原创公众号
  9. python调试器 ipdb
  10. python成长日迹--闭包