当前位置:首页 > 娱乐

数字转换成大写金额 达内告诉你如何将数字货币金额转换为大写格式

Dana告诉你如何将数字现金金额转换成大写格式

[示例描述]

在处理财务账目时,一般需要用文字表示金额。如果你在银行存钱或转账,你还需要转账数字黄金

金额以大写形式书写。换句话说,如果你想转123,456元,那么

需要写“十二万三千四百五十六元整”。对于这种感觉

如果它不仅麻烦而且容易出错,那么我们

可以设计一个程序来自动转换数字格式。这个例子

实现了小写金额到文字中金额的转换,实例运行效果如下

如图4.2所示。

图4.2将数字现金金额转换为大写格式

[实施过程]

(1)在Eclipse中创建新的项目MoneyConvert,并在其中创建一个MoneyConvert.java文件。

在这个类的main方法中创建一个标准输入流的scanner对象,接收用户输入的数字量。然后过了之后

convert()方法将此金额转换为单词形式的金额字符串格式,并将其输出到控制台。核心代码如下:

公共静态void main(String[] args) {

扫描仪扫描=新扫描仪(system . in);//创建扫描仪

System.out.println("请输入金额");

//获取金额转换后的字符串

string convert = convert(scan . NextDouble());

system . out . println(convert);//输出转换结果

}

(2)编写金额转换方法convert(),在主方法中调用,用于将金额数字转换为大写格式

转换。在此方法中,创建了一个十进制格式类的实例对象,并且数量由此格式化程序对象格式化。

只保留三个小数位。然后调用getInteger()和getDecimal()方法转换整数和小数部分,并返回

转换后的结果。关键代码如下:

公共静态字符串转换(双d) {

//实例化抽取格式对象

十进制格式df =新的十进制格式(" #0。###");

//双重数字格式

string strNum = df . format(d);

//确定是否包含小数点

if (strNum.indexOf(" . ")) != -1) {

String num = strNum.substring(0,strNum.indexOf(" . ")));

//整数部分大于12,无法转换

if (num.length()>;12) {

System.out.println("数字太大,无法完成转换!");

return

}

}

string point = ";//小数点

if (strNum.indexOf(" . ")) != -1) {

Point =“元”;

} else {

Point =“元”;

}

//转换结果

字符串结果= getInteger(strNum)+point+getDecimal(strNum);

if(result . starts with(" yuan ")){//判断字符串是否以" yuan "结尾

result = result.substring(1,result . length());//截取字符串

}

返回结果;//返回一个新字符串

}

(3)编写getInteger()方法,用于转换数字整数部分的大写格式。在该方法中,判断数字是否

包括小数点,然后将数字转换成字符串并颠倒字符顺序,为每个数字添加相应的大写单位。接近

关键代码如下:

公共静态字符串getInteger(字符串编号){

if (num.indexOf(" . ")) != -1) {//确定是否包含小数点

um = num.substring(0,num.indexOf(")。));

}

um = new StringBuffer(num)。反向()。toString();//反转字符串

StringBuffer temp = new StringBuffer();//创建一个StringBuffer

目标

for(int I = 0;i <。num . length();I++) {//加入单位

temp . append(STR _ UNIT[I]);

temp . append(STR _ NUMBER[num . charat(I)-48]);

}

um =温度反转()。toString();//反转字符串

Um = numReplace(num,“零拾取”,“零”);//替换字符串的字符

Um = numReplace(num,"零百","零");//替换字符串的字符

Um = numReplace(num,“零千”、“零”);//替换字符串的字符

Um = numReplace(num,“万”、“万”);//替换字符串的字符

Um = numReplace(num,“十亿”,“十亿”);//替换字符串的字符

um = UMRePlacement(num,“零零”、“零”);//替换字符串的字符

Um = numReplace(num,“十亿”,“十亿”);//替换字符串的字符

//如果字符串以零结尾,将被删除

If (num.lastIndexOf("零")== num.length()-1) {

um = num.substring(0,num . length()-1);

}

返回um;

}

公共静态字符串getDecimal(字符串编号){

//确定是否包含小数点

if (num.indexOf(" . ")) == -1) {

return

}

um = um.substring(num.indexOf(")。) + 1);

//反转字符串

um = new StringBuffer(num)。反向()。toString();

//创建一个StringBuffer对象

StringBuffer temp = new StringBuffer();

//加入公司

for(int I = 0;i <。num . length();i++) {

temp . append(STR _ UNIT 2[I]);

temp . append(STR _ NUMBER[num . charat(I)-48]);

}

um =温度反转()。toString();//替换字符串的字符

um = um RePlacement(num,“零角度”,“零”);//替换字符串的字符

Um = numReplace(num," zero "," zero ");//替换字符串的字符

Um = numReplace(num,"零厘米","零");//替换字符串的字符

um = UMRePlacement(num,“零零”、“零”);//替换字符串的字符

//如果字符串以零结尾,将被删除

If (num.lastIndexOf("零")== num.length()-1) {

um = num.substring(0,um . length()-1);

}

返回num

}

公共静态字符串替换(字符串编号,字符串旧字符串,字符串新字符串)

{

while (true) {

//判断字符串中是否包含指定的字符

if (num.indexOf(oldStr) == -1) {

打破;

}

//替换字符串

num = num.replaceAll(oldStr,Newstr);

}

//返回被替换的字符串

返回um;

}

[代码分析]

实现这个例子的关键在于以下几点:

格式化数字,如果有小数部分,将其转换为精确到厘米的3位小数。

将整数部分和小数部分分别转换成大写格式,并插入它们的单位(1亿,1000万...).

将转换后的整数部分和小数部分合并。

[知识拓展]

DecimalFormat类可以指定一个格式化模板来格式化浮点数,比如保留几个小数。通过调用这个类,

的format()方法可以使用指定的模板格式化任意浮点数。

1.《数字转换成大写金额 达内告诉你如何将数字货币金额转换为大写格式》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《数字转换成大写金额 达内告诉你如何将数字货币金额转换为大写格式》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/yule/1049958.html

上一篇

《山海经》之上古密约什么时候播

下一篇

江映蓉发布长文告别天娱 双方友好结束经纪合约关系

百开头的成语 数字开头的成语大全,收藏起来慢慢记!

数字神奇有趣。数字遇到成语,就更精彩了,让你纳闷:汉字真的博大精深,图案组合又是另一番风味。今天,我们为学生分享从一到十和从一百到一万的数字习语。让我们一起学习! 01 以“一”字开头的成语 一帆风顺,一鸣惊人,一心一意,醉了,没用了,一心一意,一如既往,一帆风顺,一片冰心,一条水 用心去爱...

拍字开头的成语 数字开头的成语大全,收藏起来慢慢记!

数字神奇有趣。数字遇到成语,就更精彩了,让你纳闷:汉字真的博大精深,图案组合又是另一番风味。今天,我们为学生分享从一到十和从一百到一万的数字习语。让我们一起学习! 01 以“一”字开头的成语 一帆风顺,一鸣惊人,一心一意,醉了,没用了,一心一意,一如既往,一帆风顺,一片冰心,一条水 用心去爱...

行开头的成语 数字开头的成语大全,收藏起来慢慢记!

数字神奇有趣。数字遇到成语,就更精彩了,让你纳闷:汉字真的博大精深,图案组合又是另一番风味。今天,我们为学生分享从一到十和从一百到一万的数字习语。让我们一起学习! 01 以“一”字开头的成语 一帆风顺,一鸣惊人,一心一意,醉了,没用了,一心一意,一如既往,一帆风顺,一片冰心,一条水 用心去爱...

长开头的成语 数字开头的成语大全,收藏起来慢慢记!

数字神奇有趣。数字遇到成语,就更精彩了,让你纳闷:汉字真的博大精深,图案组合又是另一番风味。今天,我们为学生分享从一到十和从一百到一万的数字习语。让我们一起学习! 01 以“一”字开头的成语 一帆风顺,一鸣惊人,一心一意,醉了,没用了,一心一意,一如既往,一帆风顺,一片冰心,一条水 用心去爱...

辙字开头的成语 数字开头的成语大全,收藏起来慢慢记!

辙字开头的成语 数字开头的成语大全,收藏起来慢慢记!

数字神奇有趣。数字遇到成语,就更精彩了,让你纳闷:汉字真的博大精深,图案组合又是另一番风味。今天,我们为学生分享从一到十和从一百到一万的数字习语。让我们一起学习! 01 以“一”字开头的成语 一帆风顺,一鸣惊人,一心一意,醉了,没用了,一心一意,一如既往,一帆风顺,一片冰心,一条水 爱自己的...

断字开头的成语 数字开头的成语大全,收藏起来慢慢记!

断字开头的成语 数字开头的成语大全,收藏起来慢慢记!

数字神奇有趣。数字遇到成语,就更精彩了,让你纳闷:汉字真的博大精深,图案组合又是另一番风味。今天,我们为学生分享从一到十和从一百到一万的数字习语。让我们一起学习! 一个 以“一”字开头的成语 一帆风顺,一鸣惊人,一心一意,醉生梦死, 没有什么,一心二用,一如既往,一刀两断, 一片冰心,一条水...

五字开头的成语 数字开头的成语大全,收藏起来慢慢记!

数字神奇有趣。数字遇到成语,就更精彩了,让你纳闷:汉字真的博大精深,图案组合又是另一番风味。今天,我们为学生分享从一到十和从一百到一万的数字习语。让我们一起学习! 一个 以“一”字开头的成语 一帆风顺,一鸣惊人,一心一意,醉生梦死, 没有什么,一心二用,一如既往,一刀两断, 一片冰心,一条水...

拔字开头的成语 数字开头的成语大全,收藏起来慢慢记!

拔字开头的成语 数字开头的成语大全,收藏起来慢慢记!

数字神奇有趣。数字遇到成语,就更精彩了,让你纳闷:汉字真的博大精深,图案组合又是另一番风味。今天,我们为学生分享从一到十和从一百到一万的数字习语。让我们一起学习! 一个 以“一”字开头的成语 一帆风顺,一鸣惊人,一心一意,醉生梦死, 没有什么,一心二用,一如既往,一刀两断, 一片冰心,一条水...