使用输入的数字去转换成汉字数字例如:
101123
一拾万一千一百二拾三
import java.util.Arrays;
import java.util.Scanner;
public class Text01 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
int MoneyNum=0;//金钱数目(整数型);
System.out.println(\"请输入金钱数目:\");
MoneyNum=in.nextInt();
T_money(MoneyNum);
}
public static void T_money(int money) {
int num=0;
String[] MoneyChinese= {\"零\",\"一\",\"二\",\"三\",\"四\",\"五\",\"六\",\"七\",\"八\",\"九\"};//汉字一到九
String[] ChineseNum= {\"\",\"拾\",\"百\",\"千\",\"万\",\"亿\"};//汉字单位
System.out.println(ChineseNum[0]);
Integer Money=new Integer(money);//转化为Integer方便转发类型
char[] Moneynum=Money.toString().toCharArray();//转换成字符串方便转换成整形
String[] MoneyChineseNum =new String[Moneynum.length];//用来存放转换后的整形数组
for(int i=0;i<Moneynum.length;i++) {
num=Moneynum[i]-48;//转换成整形
MoneyChineseNum[i]=MoneyChinese[num];//用来映射汉子一到九
}
StringBuffer MoneyTime=new StringBuffer();//字符缓冲区方便添加
int nums=0;//统计要出现的”万“
int Numss=0;//统计要出现的”亿“
for(int i=MoneyChineseNum.length-1;i>=0;i--) {
if(!MoneyChineseNum[i].equals(\"零\"))
{
if(!ChineseNum[nums].equals(\"万\"))
MoneyTime.append(ChineseNum[nums]);
}
if(nums==4&&Numss==0)//添加“万”字因为万字必须出现(必能想千、百、拾,前面有零而省去)
{
MoneyTime.append(ChineseNum[nums]);
nums=0;
Numss=1;
if(!MoneyChineseNum[i].equals(\"零\"))
{MoneyTime.append(MoneyChineseNum[i]);}//如果\"万\"字前有\"零\"除去万字前的 \"零\"
}
else if(nums==4&&Numss==1)//添加“亿”字因为万字必须出现(必能想千、百、拾,前面有零而省去)
{
MoneyTime.append(ChineseNum[nums+1]);
nums=0;
Numss=0;
if(!MoneyChineseNum[i].equals(\"零\"))
{MoneyTime.append(MoneyChineseNum[i]);}//如果\"亿\"字前有\"零\"除去亿字前的 \"零\"
}
else {
MoneyTime.append(MoneyChineseNum[i]);
}
++nums;
}
System.out.println(MoneyTime.reverse().toString());
}
}
继续阅读与本文标签相同的文章
上一篇 :
从“总仓”到“云仓” 进博会餐饮物流配送再升级
下一篇 :
独家 | 一文读懂社交网络分析-上(附学习资源)
-
Python快递鸟API接口对接(即时查询|物流跟踪|电子面单|单号识别)
2026-05-18栏目: 教程
-
免费物流快递单号查询API接口及使用教程
2026-05-18栏目: 教程
-
【译】Hadoop发生了什么?我们该如何做?
2026-05-18栏目: 教程
-
阿里云上云企业案例周刊·第2期
2026-05-18栏目: 教程
-
虚拟机模拟部署Extended Clusters(一)基础环境准备
2026-05-18栏目: 教程
