Java-人民币转成大写
- /**
- * 人民币转成大写 hangeToBig
- *
- * @param value
- * @return String
- */
- public static String 人民币转成大写(double value) {
- char[] hunit = { '拾', '佰', '仟' }; // 段内位置表示
- char[] vunit = { '万', '亿' }; // 段名表示
- char[] digit = { '零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖' }; // 数字表示
- long midVal = (long) (value * 100); // 转化成整形
- String valStr = String.valueOf(midVal); // 转化成字符串
- String head = valStr.substring(0, valStr.length() - 2); // 取整数部分
- String rail = valStr.substring(valStr.length() - 2); // 取小数部分
- String prefix = ""; // 整数部分转化的结果
- String suffix = ""; // 小数部分转化的结果
- // 处理小数点后面的数
- if (rail.equals("00")) { // 如果小数部分为0
- suffix = "整";
- } else {
- suffix = digit[rail.charAt(0) - '0'] + "角"
- + digit[rail.charAt(1) - '0'] + "分"; // 否则把角分转化出来
- }
- // 处理小数点前面的数
- char[] chDig = head.toCharArray(); // 把整数部分转化成字符数组
- char zero = '0'; // 标志'0'表示出现过0
- byte zeroSerNum = 0; // 连续出现0的次数
- for (int i = 0; i < chDig.length; i++) { // 循环处理每个数字
- int idx = (chDig.length - i - 1) % 4; // 取段内位置
- int vidx = (chDig.length - i - 1) / 4; // 取段位置
- if (chDig[i] == '0') { // 如果当前字符是0
- zeroSerNum++; // 连续0次数递增
- if (zero == '0') { // 标志
- zero = digit[0];
- } else if (idx == 0 && vidx > 0 && zeroSerNum < 4) {
- prefix += vunit[vidx - 1];
- zero = '0';
- }
- continue;
- }
- zeroSerNum = 0; // 连续0次数清零
- if (zero != '0') { // 如果标志不为0,则加上,例如万,亿什么的
- prefix += zero;
- zero = '0';
- }
- prefix += digit[chDig[i] - '0']; // 转化该数字表示
- if (idx > 0)
- prefix += hunit[idx - 1];
- if (idx == 0 && vidx > 0) {
- prefix += vunit[vidx - 1]; // 段结束位置应该加上段名如万,亿
- }
- }
- if (prefix.length() > 0)
- prefix += '圆'; // 如果整数部分存在,则有圆的字样
- return prefix + suffix; // 返回正确表示
- }
Java-人民币转成大写的更多相关文章
- C# 人民币转成大写
/// <summary> /// 转换人民币大小金额 /// </summary> /// <param name="num">金额</ ...
- C#小写数字金额转换成大写人民币金额的算法
C#小写数字金额转换成大写人民币金额的算法 第一种方法: using System.Text.RegularExpressions;//首先引入命名空间 private string DaXie(st ...
- Java汉字转成汉语拼音工具类
Java汉字转成汉语拼音工具类,需要用到pinyin4j.jar包. import net.sourceforge.pinyin4j.PinyinHelper; import net.sourcefo ...
- android 设置字体颜色、EditText自己主动输入转换成大写字母的多种方式
在TextView上面设置某一个字的字体颜色为指定颜色时,能够通过java类SpannableString类和Html语言来实现. (一)SpannableString类方式 private void ...
- Scanner方式输入小写字母转换成大写字母
import java.util.Scanner; /** * 小写字母转换成大写字母 * @author zzu119 * */ public class letterTransfe ...
- php人民币小写转大写函数,不限长度,精确到分
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://ustb80.blog.51cto.com/6139482/1035327 在打印 ...
- java代码打包成jar以及转换为exe
教你如何把java代码打包成jar文件以及转换为exe可执行文件 1.背景: 学习java时,教材中关于如题问题,只有一小节说明,而且要自己写麻烦的配置文件,最终结果却只能转换为jar文件.实在是心有 ...
- AC日记——将字符串中的小写字母换成大写字母 openjudge 1.7 13
13:将字符串中的小写字母转换成大写字母 总时间限制: 1000ms 内存限制: 65536kB 描述 给定一个字符串,将其中所有的小写字母转换成大写字母. 输入 输入一行,包含一个字符串(长度不 ...
- Myeclipse中把java代码导成UML类图
Myeclipse中把java代码导成UML类图 1.右键点击项目名称,选择New-------àUML2 Model 2.给类图命名 3.导成类图 1)如果要把整个项目导成类图,则把整个项目拖到类图 ...
随机推荐
- codeforces 711D D. Directed Roads(dfs)
题目链接: D. Directed Roads time limit per test 2 seconds memory limit per test 256 megabytes input stan ...
- Google Map API 使用总结
Google Map API (一):显示一个最基本的地图 1 实现一个地图:<head>中引用: <script type="text/javascript" ...
- UVALive 6656 Watching the Kangaroo --二分
题意:给你一些区间,再查询一些点,问这些点与所有区间形成的最小距离的最大值.最小距离定义为:如果点在区间内,那么最小距离为0,否则为min(pos-L[i],R[i]-pos). 解法:当然要排个序, ...
- java 14 -1 正则表达式
正则表达式:符合一定规则的字符串. 1.判断QQ号码是否正确的案例: public class RegexDemo2 { public static void main(String[] args) ...
- View (五)自定义View的实现方法
一些接触Android不久的朋友对自定义View都有一丝畏惧感,总感觉这是一个比较高级的技术,但其实自定义View并不复杂,有时候只需要简单几行代码就可以完成了. 如果说要按类型来划分的话,自定义Vi ...
- 百度BAE环境下WordPress搭建过程
参考: 文章一:http://capbone.com/bae-wordpress/ 文章二:http://tieba.baidu.com/p/2612184581 注意点: wordpress 下载地 ...
- Android View.onMeasure方法的理解
View在屏幕上显示出来要先经过measure(计算)和layout(布局).1.什么时候调用onMeasure方法? 当控件的父元素正要放置该控件时调用.父元素会问子控件一个问题,“你想要用多大地方 ...
- C#进阶系列——WebApi身份认证解决方案:Basic基础认证 (转)
http://www.cnblogs.com/landeanfen/p/5287064.html 前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人 ...
- puer工具的使用
在项目开发的过程当中,总会有前端开发快完成,后端接口却迟迟提供不了的情况.此时为了不影响前端开发的进度,我们可以借助puer来模拟后端接口测试.简单的说,puer就是一个可以实时刷新的前端服务器.具体 ...
- initWithNibName&initWithCoder &awakeFromNib&UIView常见属性方法
第一.initWithNibName这个方法是在controller的类在IB中创建,但是通过Xcode实例化controller的时候用的. 第 二.initWithCoder 是一个类在IB中创建 ...