import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class RMBUpper {
private final String []dws=new String[]{"","拾","佰","仟","万","拾万","佰万","仟万","亿","拾亿","佰亿","仟亿"};
private final String []szs=new String[]{"零","壹","贰","叁","肆","伍","陆","柒","捌","镹"};
private String qs;
private String result="";
/**
* 功能:转化十亿以内的人民币数字为大写格式
* @param args
*/
public static void main(String[] args) {
BufferedReader in
= new BufferedReader(new InputStreamReader(System.in));
String r="0";
do{
System.out.println("请输入要转换为大写的十亿以内的正整数:");
try {
r=in.readLine();
r=Integer.parseInt(r)+"";
} catch (IOException e) {
e.printStackTrace();
}
}
while(!(Integer.parseInt(r)>0&&Integer.parseInt(r)<1000000000));
RMBUpper rmb=new RMBUpper(r+"");
System.out.println(rmb.getUpper());
}
public String getUpper() {
// TODO 获得输入的大写形式
this.com();
return this.result;
}
private void com() {
// TODO 开始计算
this.turnNumNotZero();
this.deleteTooMuchZero();
this.turnZero();
}
private void turnZero() {
// TODO 将0转换为零
if(this.result.lastIndexOf("0")==this.result.length()-1){//处理最后是零的情况
this.result=this.result.substring(0,this.result.length()-1);
}
this.result=this.result.replaceAll("0", this.szs[0]);
}
private void deleteTooMuchZero() {
// TODO 删除多余的零
if(this.result.indexOf("00")==-1)return;
this.result=this.result.replace("00", "0");
this.deleteTooMuchZero();
}
private void turnNumNotZero() {
// TODO 将非零数字转换为大写
for(int i=0;i<this.qs.length();i++){
int index=Integer.parseInt(this.qs.charAt(i)+"");
if(index!=0){
this.result+=this.szs[index]+this.dws[this.qs.length()-i-1];
}else{
this.result+="0";
}
}
}
public RMBUpper(String qs) {
this.qs = qs;
}
}
分享到:
相关推荐
在IT行业中,尤其是在编程领域,有时我们需要将数字转化为特定的文本格式,如将数字转换成大写的人民币格式。这在财务软件、报表系统或者任何涉及金融数据展示的应用中非常常见。"转变数字为大写人民币格式"这个话题...
人民币数字转大写.java
在excel中输入数字转换成人民币大写,在excel中输入数字转换成人民币大写,在excel中输入数字转换成人民币大写
在Java编程语言中,将数字转化为人民币大写形式是一个常见的需求,特别是在财务或者会计系统中。这涉及到字符串处理和字符映射的知识。以下是一个详细的过程和相关知识点。 首先,我们需要了解人民币大写数字的规则...
本文将深入探讨如何实现一个程序,将人民币的数字形式(包含小数点)转化为大写形式,例如将"1.56"转化为"壹元伍角陆分"。 首先,我们需要了解人民币的数字与大写文字之间的对应规则。人民币的大写形式有壹、贰、叁...
人民币数字转大写_金额转换小工具 财务人员经常用到。
标题提到的“人民币数字变大写形式”是一个常见的功能,尤其在财务系统或者银行应用中,它涉及到将阿拉伯数字的金额转换为汉字大写的表示,以确保财务记录的清晰性和准确性。这种转换在财务报表、发票和合同中尤其...
2. `isRMB`:可选参数,布尔值,默认情况下为False,如果设置为True,则表示转换为人民币格式,包含元、角、分;如果为False,则不包括这些单位。 3. `numOption`:可选参数,布尔值,当其为True时,会在每个数字...
**知识点详解:人民币数字转大写黑盒测试...总之,“人民币数字转大写”的黑盒测试实验是一个典型的案例,它不仅涉及基础的软件测试理论,还融入了对具体业务逻辑的深入理解,为软件测试教学和实践提供了有价值的参考。
人民币数字转换成汉字大写 android Java 运行效率
JS将数字转换为大写汉字人民币
Java 人民币金额数字转换成大写 Java 人民币金额数字转换成大写是 Java 面试中最常见的问题之一。本文将详细介绍如何使用 Java 实现人民币金额数字转换成大写的解决方案。 Java 中的 NumberFormat 类 在 Java 中...
用户输入一个十亿以内的正整数,程序可以通过`text()`函数获取到输入的字符串。 2. **数值验证**:虽然题目假设用户输入总是正确的,但在实际编程中,我们应当进行输入验证,确保输入的是有效的数字。可以使用`...
Java 实现数字转换人民币中文大写工具是指使用 Java 语言将数字转换为人民币中文大写格式的工具。该工具具有很高的实用价值,特别是在人事业务系统开发中,经常需要将数字转换为大写,以便于报表打印和日常业务处理...
在编程领域,尤其是在财务软件开发中,将数字转化为大写汉字是常见的需求,尤其是在处理人民币金额时。在C#中实现这一功能,可以利用字符串处理、条件判断以及对汉字字符的映射。以下是对这个主题的详细解释: 首先...
很好用的转化小工具,可以转化万亿以内的数字。 本软件未做完整的字符过滤,请勿尝试无关字符。
综上所述,"数字转大写实例 人民币转大写实例"涉及到的是编程中处理数字和货币格式化的问题,尤其是中文环境下对数字和货币单位的正确转换,这在财务系统和相关应用开发中是必不可少的知识点。通过理解和掌握这些...
总的来说,将数字转换为人民币大写是C#开发中的一项常见任务,通过理解和运用字符串处理技巧以及对人民币大写规则的理解,我们可以轻松地实现这个功能。在实际编程中,确保代码的健壮性和可维护性也是至关重要的。
人民币由阿拉伯数字转为大写中文