⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 money1.java

📁 java实验答案。其中包括:金额的中文大写方式
💻 JAVA
字号:
public class Money1{
  
  public void printPower(int i){
    switch(i){
      case 1:System.out.print("元");break;
      case 2:System.out.print("拾");break;
      case 3:System.out.print("佰");break;
      case 4:System.out.print("仟");break;
      case 5:System.out.print("万");break;
      case 6:System.out.print("拾");break;
      case 7:System.out.print("佰");break;
      case 8:System.out.print("仟");break;
      case 9:System.out.print("亿");break;
      case 10:System.out.print("拾");break;
      case 11:System.out.print("佰");break;
      case 12:System.out.print("仟");break;
    } 
  }   
      
  public String replaceChinese(String s){
    String s1=s;
    s1=s1.replace('1','壹');
    s1=s1.replace('2','贰');
    s1=s1.replace('3','叁');
    s1=s1.replace('4','肆');
    s1=s1.replace('5','伍'); 
    s1=s1.replace('6','陆');
    s1=s1.replace('7','柒');
    s1=s1.replace('8','捌');
    s1=s1.replace('9','玖');
    s1=s1.replace('0','零');
    return(s1);
  }  
  
  public void printInt(String wholeNumber){
    wholeNumber=replaceChinese(wholeNumber); //将整数部分转换成中文大写
    int length=wholeNumber.length();   //取得字符串的长度
    boolean firstZero=true;
    for(int i=0;i<length;i++){      // 打印整数部分
      char ch=wholeNumber.charAt(i);
      int power=length-i;  //定义权值
      if(ch!='零'){        //非零的数打印汉字数码和单位权值
        System.out.print(ch);    //打印汉字
        printPower(power);     //打印权值
        firstZero=true;         	
      }
      else{               //零值打印方法
        boolean isSeriesZero=true;   //测试是否有连续的零直到结束
        for(int j=i+1;j<length;j++)
          if(wholeNumber.charAt(j)!='零')
            isSeriesZero=false;
          if(firstZero&(!isSeriesZero)){
            System.out.print(ch);
            firstZero=false;
          }
          if(isSeriesZero){
            System.out.print('元');
            break;
          }
           
      }//End of else   
     }  //End of for	    	
  }
  
  public void printDecimal(String s){
    int i,j;
    
    i=Integer.parseInt(s.substring(0,1));
    switch(i){
      case 1:System.out.print("壹角");break;
      case 2:System.out.print("贰角");break;
      case 3:System.out.print("叁角");break;
      case 4:System.out.print("肆角");break;
      case 5:System.out.print("伍角");break;
      case 6:System.out.print("陆角");break;
      case 7:System.out.print("柒角");break;
      case 8:System.out.print("捌角");break;
      case 9:System.out.print("玖角");break;
    } 
    if(s.length()==1) return;
    j=Integer.parseInt(s.substring(1,2)); 
    switch(j){
      case 1:System.out.print("壹分");break;
      case 2:System.out.print("贰分");break;
      case 3:System.out.print("叁分");break;
      case 4:System.out.print("肆分");break;
      case 5:System.out.print("伍分");break;
      case 6:System.out.print("陆分");break;
      case 7:System.out.print("柒分");break;
      case 8:System.out.print("捌分");break;
      case 9:System.out.print("玖分");break;
    }  
    
  }   //End of function printDecimal
  
  public static void main(String args[]){
    int i;
    String s;
    Money1 m=new Money1();
    
    System.out.println("Please input number:");
    s=ReadKb.getString();
    i=s.indexOf('.');
    
    if(i==-1){            //无小数值的打印方法
      String wholeNumber=s;// 取得整数部分
      wholeNumber=m.replaceChinese(wholeNumber); //将整数部分转换成中文大写
      m.printInt(wholeNumber);      
      System.out.println("整");
    }  
    else{
      String wholeNumber=s.substring(0,i);// 取得整数部分
      String decimal=s.substring(i+1);//取得小数部分
      wholeNumber=m.replaceChinese(wholeNumber); //将整数部分转换成中文大写
      m.printInt(wholeNumber);
      m.printDecimal(decimal);  
   }    
  }   // End of main 
}     

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -