1 代码示例
import java.util.Arrays; /** * Description: * <br/>网站: <a href="http://www.crazyit.org">疯狂Java联盟</a> * <br/>Copyright (C), 2001-2016, Yeeku.H.Lee * <br/>This program is protected by copyright laws. * <br/>Program Name: * <br/>Date: * @author Yeeku.H.Lee kongyeeku@163.com * @version 1.0 */ public class Num2Rmb { private String[] hanArr = {"零" , "壹" , "贰" , "叁" , "肆" , "伍" , "陆" , "柒" , "捌" , "玖"}; private String[] unitArr = {"十" , "百" , "千"}; /** * 把一个浮点数分解成整数部分和小数部分字符串 * @param num 需要被分解的浮点数 * @return 分解出来的整数部分和小数部分。第一个数组元素是整数部分,第二个数组元素是小数部分。 */ private String[] divide(double num) { // 将一个浮点数强制类型转换为long,即得到它的整数部分 long zheng = (long)num; // 浮点数减去整数部分,得到小数部分,小数部分乘以100后再取整得到2位小数 long xiao = Math.round((num - zheng) * 100); // 下面用了2种方法把整数转换为字符串 return new String[]{zheng + "", String.valueOf(xiao)}; } /** * 把一个四位的数字字符串变成汉字字符串 * @param numStr 需要被转换的四位的数字字符串 * @return 四位的数字字符串被转换成的汉字字符串。 */ private String toHanStr(String numStr) { String result = ""; int numLen = numStr.length(); // 依次遍历数字字符串的每一位数字 for (int i = 0 ; i < numLen ; i++ ) { // 把char型数字转换成的int型数字,因为它们的ASCII码值恰好相差48 // 因此把char型数字减去48得到int型数字,例如'4'被转换成4。 int num = numStr.charAt(i) - 48; // 如果不是最后一位数字,而且数字不是零,则需要添加单位(千、百、十) if ( i != numLen - 1 && num != 0) { result += hanArr[num] + unitArr[numLen - 2 - i]; } // 否则不要添加单位 else { result += hanArr[num]; } } return result; } public static void main(String[] args) { Num2Rmb nr = new Num2Rmb(); // 测试把一个浮点数分解成整数部分和小数部分 System.out.println(Arrays.toString(nr.divide(236711125.123))); // 测试把一个四位的数字字符串变成汉字字符串 System.out.println(nr.toHanStr("1609")); } }
2 运行结果
[236711125, 12]
壹千陆百零玖
3 结果分析
Num2Rmb类实现了两个功能:
(1)将一个浮点数分解成整数部分和小数部分字符串。
(2)把一个四位数字字符串变成汉字字符串。
相关推荐
第6章__数组应用实战 第7章__函数传参及返回 第8章__Shell内置命令 第9章__RE正则表达式 第10章__Sed流编辑器 第11章__awk文本处理工具实战 第12章__项目实战之 系统性能分析 第13章__项目实战之 主机存活状态 第14...
### Java软件开发实战:数组应用详解 #### 一、引言 在《Java软件开发实战》这本书中,第四章第二节“数组应用”深入探讨了数组这一基础数据结构的应用场景及其实现方法。数组作为一种基本的数据结构,在实际开发...
"stm32"是微控制器系列,可能涉及嵌入式系统中的数组应用。"小程序"可能指的是微信小程序或类似平台,数组在这种环境中也有广泛应用。"心梓知识"可能是提供这些资源的个人或机构的名字。 【压缩包子文件的文件名称...
基于C语言的一维数组应用的教学设计是关于如何利用C语言的基本特性,使学生掌握数组概念、数组的使用方法,并通过实际案例——投票统计器,来加深对一维数组应用的理解。在《C语言程序设计》课程中,一维数组的应用...
在Java编程语言中,数组是一种非常基础且重要的数据结构,用于存储同类型的多个元素。...在实际开发中,数组被广泛应用于数据存储和处理,是解决问题的关键工具之一。希望大家能积极参与讨论,提出问题,共同进步。
《Greenplum 企业应用实战》是一本深入探讨大数据存储和分布式计算的书籍,特别关注于 PostgreSQL 和 MPP(大规模并行处理)架构下的 Greenplum 数据库系统。该资源以高清PDF格式提供,便于读者深入学习和研究。 ...
在编程领域,数组是一种基本的数据结构,用于存储同类型的多个数据项。在VB.NET中,我们经常使用一维数组...通过分析`VBnet090411_MultiDimArray多重数组的应用`这个项目,我们可以学习到更多关于多维数组的实战技巧。
本主题聚焦于`awk`的数组应用,将深入探讨如何利用`awk`处理数组,以实现对复杂数据集的分析和操作。 数组在`awk`中扮演着核心角色,它允许我们存储和处理一组相关的数据。与许多编程语言不同,`awk`中的数组并不...
五、高级数组应用 1. 多维数组:用于处理更复杂的数据结构,如图像处理、矩阵运算等。 2. 集合和簇:数组中的元素可以是集合或簇,实现数据的分类和组合。 3. 数组函数库:LabVIEW 提供了丰富的数组函数库,如数学...
Java二维数组是一种非常重要的数据结构,在Java编程中广泛应用于数据存储和处理。本文将详细介绍Java二维数组的定义、遍历、计算等相关操作技巧,并通过实战案例形式分析Java二维数组的使用。 一、Java二维数组的...
本章节将深入探讨数组的使用、操作以及在实际开发中的应用。 首先,数组的基本概念是必不可少的。数组可以看作是一系列元素的有序集合,这些元素共享同一类型。在Java中,数组的声明通常包含两部分:数组的类型和数...
java实现数组,java开发实战经典,李新华,继承的应用
9. **实战演练**:提供一系列练习题,让读者有机会亲自操作,加深对数组公式的理解和应用能力。 10. **常见问题解答**:列出学习过程中可能遇到的问题和解决方法,帮助用户更好地理解和掌握数组公式。 通过本教程...
在实际应用中,如果不想创建新的二维数组,可以原地倒置二维数组。但需要注意,原地倒置对于行和列是不同的。对于行,可以直接交换第一行和最后一行,第二行和倒数第二行,依此类推。对于列,原地倒置会更复杂,...
在数组应用中,经典排序算法如冒泡排序、选择排序、插入排序、快速排序等是常见的操作,它们用于改变数组元素的顺序。 8.6 字符串处理函数 C语言提供了如`strlen()`、`strcpy()`、`strcat()`等函数来处理字符串,...
易语言是一种专为中国人设计的编程语言,它以简体中文作为编程语法,降低了编程的门槛,使得更多非计算机专业的用户也能轻松...在实际应用中,可以根据需要调整这个算法,例如,优化性能或者支持不同类型的数据结构。
数组转置是数组操作中的一个重要概念,尤其在数据分析、矩阵运算和公式应用中经常用到。本教程将深入探讨如何在Excel中进行数组的转置和变换。 一、数组转置的基本概念 数组转置是指将一个矩阵或数组的行和列互换...
在IT领域,数组是一种基础且重要的数据结构,它在各种编程语言中都有广泛的应用,包括C++。本项目聚焦于“数组类”的实现,通过提供`MyArray.cpp`、`TestArray.cpp`和`MyArray.h`三个文件,旨在演示如何在C++中...
这个“单片机语言C51应用实战集锦”显然是为了帮助学习者深入理解和掌握C51语言及其在实际项目中的应用。 首先,C51语言的基础知识是必不可少的,包括数据类型(如char、int、float等)、运算符、控制结构(如if-...
本文将深入探讨静态数组表示法在实现线性结构中的应用,并通过C语言源码来解析其工作原理。 静态数组是一种预先分配固定大小的内存空间来存储数据的结构。在C语言中,数组定义时需要指定长度,且长度一旦确定,无法...