将一个数字转化成中文输出

来源:互联网 发布:非关系型数据库排行 编辑:程序博客网 时间:2024/04/29 06:00

import java.util.*;
public class RmbConvert {
   
public void convertToCapital(double money){
        String[] capitalRmb
=new String[14];
       
for(int i=0;i<capitalRmb.length;i++){
           
int j=(int)((money*100)%10);
            money
/=10;
           
switch(j){
           
case0: capitalRmb[i]="";break;
           
case1:capitalRmb[i]="";break;
           
case2:capitalRmb[i]="";break;
           
case3:capitalRmb[i]="";break;
           
case4:capitalRmb[i]="";break;
           
case5:capitalRmb[i]="";break;
           
case6:capitalRmb[i]="";break;
           
case7:capitalRmb[i]="";break;
           
case8:capitalRmb[i]="";break;
           
case9:capitalRmb[i]="";break;
            }
        }
        String[] str
=new String[]{
               
"","","","亿","","","","","","","","","",""
        };
       
int init=0;
       
while(capitalRmb[capitalRmb.length-1-init]==""){
            init
++;
        }
       
for(int i=init;i<str.length;i++){
           
if(capitalRmb[capitalRmb.length-1-i]==""&&str[i]!=""&&str[i]!=""){
                System.out.print(capitalRmb[capitalRmb.length
-1-i]);
            }
else
            System.out.print(capitalRmb[capitalRmb.length
-1-i]+str[i]);
        }
    }
   
public void convertToLower(String money){
       
char[] c=money.toCharArray();
       
double[] num=newdouble[c.length/2];
       
int j=0;
       
for(int i=0;i<c.length;i+=2){
           
double d=num.length-3-j;
           
switch(c[i]){
           
case'':num[j++]=(0*Math.pow(10.0,d));break;
           
case'':num[j++]=(1*Math.pow(10.0,d));break;
           
case'':num[j++]=(2*Math.pow(10.0,d));break;
           
case'':num[j++]=(3*Math.pow(10.0,d));break;
           
case'':num[j++]=(4*Math.pow(10.0,d));break;
           
case'':num[j++]=(5*Math.pow(10.0,d));break;
           
case'':num[j++]=(6*Math.pow(10.0,d));break;
           
case'':num[j++]=(7*Math.pow(10.0,d));break;
           
case'':num[j++]=(8*Math.pow(10.0,d));break;
           
case'':num[j++]=(9*Math.pow(10.0,d));break;
            }
           
        }
       
double init=0;
       
for(int i=0;i<num.length;i++){
            init
+=num[i];
        }
        System.out.print(init);
    }
   
public static void main(String[] args) {
        System.out.println(
"please enter the lower momey");
        RmbConvert rmb
=new RmbConvert();
        Scanner sca
=new Scanner(System.in);
        Double money
=sca.nextDouble();
        System.out.println(
"convert to Capital");
        rmb.convertToCapital(money);
        System.out.println();
        System.out.println(
"convert to lower");
        Scanner sc
=new Scanner(System.in);
        String str
=sc.next();
        rmb.convertToLower(str);
    }

}