/** * 人民币转成大写 * * @param value * @return String */ public static String hangeToBig(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; // 返回正确表示 } 冒泡排序 int[] cha = { 10, 15, 9, 30, 50 };//外层循环N-1,内层循环N-1-i for(int i=0;i<cha.length-1;i++){ for(int j=0;j<cha.length-1-i;j++){ if(cha[j]>cha[j+1]){ int temp=cha[j]; cha[j]=cha[j+1]; cha[j+1]=temp; } } }
发表评论
-
eclipse/myeclipse注释模板的修改(网摘)
2015-04-07 10:21 640本文转自:http://kaminlee.iteye.com ... -
Java中的UDP协议编程
2012-07-26 10:50 1074一. UDP协议定义 UDP协 ... -
Java爬网页方法
2012-05-18 11:31 1083/* Function name: myGetHt ... -
Java日期公用处理类
2012-05-18 11:33 1248import java.text.SimpleDateFo ... -
Java一组日期方法
2012-05-18 11:33 1196import java.text.SimpleDateFo ... -
Java控制小数点的几个常用方法
2012-05-18 11:33 1408import java.text.DecimalForma ... -
Java基础加密组件
2012-05-18 11:32 1102import java.security.MessageD ... -
Java一些格式化的通用代码
2012-05-17 10:10 1258import javax.servlet.http.Htt ... -
Java动态代理
2012-05-17 10:10 804import java.lang.reflect.Invo ... -
Java导出成Excel的方法(需要jxl.jar包)
2012-05-17 10:10 1932import java.io.File; import ... -
Java遗传算法
2012-05-17 10:09 996import java.util.*; public ... -
Java各种数据库连接
2012-05-16 10:29 951MySQL: String Driv ... -
Java系统托盘的应用
2012-05-16 10:28 872import java.applet.Applet; ... -
Java获取ip地址
2012-05-16 10:27 1019import java.awt.GridLayout; ... -
Java日期处理bean
2012-05-16 10:25 870import java.text.ParsePositio ... -
java访问*.properties资源文件
2012-05-16 10:23 742import java.io.FileInputStrea ...
相关推荐
Java 实现数字转换人民币中文大写工具 Java 实现数字转换人民币中文大写工具是指使用 Java 语言将数字转换为人民币中文大写格式的工具。该工具具有很高的实用价值,特别是在人事业务系统开发中,经常需要将数字转换...
这是一个把人民币数字转换成大写的java程序
人民币数字转大写.java
Java 人民币金额数字转换成大写 Java 人民币金额数字转换成大写是 Java 面试中最常见的问题之一。本文将详细介绍如何使用 Java 实现人民币金额数字转换成大写的解决方案。 Java 中的 NumberFormat 类 在 Java 中...
使用java实现对人民币大写处理,亲测可用!
### 人民币小写金额转大写金额(Java版) #### 概述 本文将详细介绍一个Java程序,该程序用于将小写的人民币金额转换为大写形式。此转换主要用于财务、会计和其他正式场合,在这些场合中,大写金额是标准且必须的...
Java 类金额转换成大写 在 Java 编程语言中,金额转换成大写是非常有用的功能,特别是在财务、银行、电子商务等领域中。下面我们来详细介绍如何使用 Java 实现金额转换成大写的功能。 实例代码分析 首先,我们来...
首先,我们需要了解人民币大写的表示方式。人民币大写包括:壹、贰、叁、肆、伍、陆、柒、捌、玖、拾、佰、仟、万、亿。小写金额如"123.45"转换为大写应为"壹佰贰拾叁元肆角伍分"。 要实现这个功能,可以创建一个`...
人民币数字转换成汉字大写 android Java 运行效率
java人民币大写转换例子。
在Java编程中,将数字转换为人民币大写是常见的需求,尤其在财务系统或银行软件中,为了确保财务数据的准确性,通常会使用规范的汉字表示金额。人民币大写包括壹、贰、叁、肆、伍、陆、柒、捌、玖、零,以及整、元、...
本篇将介绍如何使用Java编程语言将人民币金额转换成大写,并且通过自定义标签库(Tag Library)在网页上显示。首先,我们来看`ChangeNumMoney.java`这个文件,它可能包含了实现金额转换的核心逻辑。 `...
总结来说,`基于java的人民币大写的转换`是一个涉及到字符串处理、数字逻辑和汉字映射的编程任务,`DaXie.java`文件应该包含了实现这一功能的具体代码。通过学习和理解这段代码,开发者可以更好地掌握Java中的字符串...
根据给定的文件信息,我们可以总结出以下有关“Java方法小写转换大写人民币”的相关知识点: ### 一、背景介绍 在财务处理、银行系统等业务场景中,经常需要将数字金额转换为中文大写形式,特别是对于精确度较高的...
数字转换成人民币大写
这个"Rmb.rar_人民币 转换 java_人民币大写"的压缩包就是一个典型的例子,它包含了一个Java程序,用于将数字转换成符合中国金融规范的人民币大写形式。这种转换对于财务报表、发票开具等场景至关重要,因为它们要求...
用JAVA书写的一个大写金额转化为小写金额的类
可以实现将 10002 转换成壹万零貮元整 10100021转换成壹千零壹拾万零貮拾壹元整 110.00 转换成壹佰壹拾元整 10.01 转换成壹拾元零壹分
这段代码是用于将数字转换为中文大写的人民币表示方式,主要应用于财务软件或者与货币相关的程序中,方便在中文环境中准确地表示金额。这个函数名为`GetChinaNum`,接收4个参数:`otherNum`、`isRMB`、`numOption`和...