java无限阿拉伯数字转中文数字

public class Chang {

 static int d =0;
 static String[] danwei = {"零","一","二","三","四","五","六","七","八","九"};
 static String[] danwei1 = {"","十","百","千"};
 static String[] danwei2 = {"","万","亿"};
 static boolean lingdan = false;
 static int jj = 1;
 
 public static void main(String[] args) {
  String leng = "1000000000001";
  System.out.println(doget(leng));
 }
 
 public static String doget(String get)
 {
  if(get.length()<=4)
  {
   return shuzi(get);
  }
  String get2 = get.substring(get.length()-4,get.length());
  String r2 = shuzi(get2);
  d++;
  return (doget(get.substring(0,get.length()-4))+r2);
 }
 
 
 public static String shuzi(String shu)
 {
  String result = "";
  int[] in = new int[4];
  
  if(Integer.parseInt(shu)!=0)
  {
   for(int i = 0;i<shu.length();i++)
   {
    if(Integer.parseInt(shu.charAt(i)+"")==0)
    {
     if(i>0 && Integer.parseInt(shu.charAt(i-1)+"")==0 || i== shu.length()-1 || Integer.parseInt(shu)%10==0)
     {
      continue;
     }
     result += danwei[Integer.parseInt(shu.charAt(i)+"")];
     continue;
    }
    result += danwei[Integer.parseInt(shu.charAt(i)+"")]+danwei1[shu.length()-i-1];
   }
   result += danwei2[d];
  }
  else if(d==2)
  {
   result += danwei2[d];
  }
  
  if(d==2)d=0;
  jj = Integer.parseInt(shu);
  return result;
 }
 
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值