一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - 支票金額大寫轉(zhuǎn)換示例(金額大寫轉(zhuǎn)換器)

支票金額大寫轉(zhuǎn)換示例(金額大寫轉(zhuǎn)換器)

2019-11-06 11:34java教程網(wǎng) JAVA教程

這篇文章主要介紹了支票金額大寫轉(zhuǎn)換示例(金額大寫轉(zhuǎn)換器),需要的朋友可以參考下

代碼如下:


import java.util.HashMap;
import java.util.Map;

 

public class FigureAndChinese2Util {

 // 緩存所有數(shù)字的
 private static Map<Character, Character> map = new HashMap<Character, Character>(
   10);
 static {
  map.put('1', '壹');
  map.put('2', '貳');
  map.put('3', '叁');
  map.put('4', '肆');
  map.put('5', '伍');
  map.put('6', '陸');
  map.put('7', '柒');
  map.put('8', '捌');
  map.put('9', '玖');
  map.put('0', '零');
 }
 static char[] mode = new char[] { '拾', '佰', '仟' };

 public static void m(String sb) {

  StringBuffer sbf = new StringBuffer();
  String[] sp = sb.split("\\.");
  if (sp.length == 2) {
   m0(sp[0], 0, sbf);
   sbf.append(m2(sp[1]));
  } else
   m0(sb, 0, sbf);
  sbf.append("整");
  System.out.println(sbf);
 }

 /***
  * 切割字符串
  * 
  * @param sb
  */
 public static void m0(String sb, int type, StringBuffer sbf) {

  int len = sb.length();
  int b = 0;
  type++;
  if (len >= 4) {
   b = len - 4;
   sbf.insert(0, m1(sb.substring(b), type));
   m0(sb.substring(0, b), type, sbf);
  } else if (len > 0)
   sbf.insert(0, m1(sb, type));
  if ('零' == sbf.charAt(0))
   sbf.deleteCharAt(0);
 }

 /***
  * 處理
  * 
  * @param sb
  */
 public static StringBuffer m1(String sb, int type) {

  StringBuffer sbf = new StringBuffer(sb);
  switch (type) {
  case 1:
   sbf.append("圓");
   break;
  case 2:
   sbf.append("萬");
   break;
  case 3:
   sbf.append("億");
   break;
  default:
   break;
  }
  // 開始賦值
  int b = 0;
  char t = 0;
  for (int i = sbf.length() - 2; i >= 0; i--) {
   t = sbf.charAt(i);
   sbf.setCharAt(i, map.get(t));
   if (i != 0)
    sbf.insert(i, mode[b]);
   b++;
  }
  for (int i = 0; i < sbf.length(); i++) {
   t = sbf.charAt(i);
   if (t == '零') {
    t = sbf.charAt(i + 1);
    if ('圓' != t && '萬' != t && '億' != t)
     sbf.deleteCharAt(i + 1);
    else
     sbf.deleteCharAt(i);
    if (i != 0)
     if (sbf.charAt(i - 1) == '零') {
      sbf.deleteCharAt(i - 1);
      i--;
     }
   }
  }
  if (sbf.length() == 1) {
   if ('圓' != sbf.charAt(0))
    sbf.setLength(0);
  }
  return sbf;
 }

 public static StringBuffer m2(String de) {

  if (de.length() > 2)
   de = de.substring(0, 2);
  de = de.replaceFirst("00", "");
  StringBuffer sb = new StringBuffer(de);
  if (sb.length() > 0) {
   if (sb.charAt(sb.length() - 1) == '0')
    sb.deleteCharAt(sb.length() - 1);
   sb.setCharAt(0, map.get(sb.charAt(0)));
   switch (sb.length()) {
   case 1:
    sb.append("角");
    break;
   case 2:
    sb.setCharAt(1, map.get(sb.charAt(1)));
    if (sb.charAt(0) != '零')
     sb.insert(1, '角');
    sb.append("分");
    break;
   default:
    break;
   }
  }
  return sb;
 }

 public static void main(String[] args) {

  String s = "4444444441.23";
  String s1 = "1";
  String s2 = "1000000000.01";
  String s3 = "101010002.11";
  m(s);
  m(s1);
  m(s2);
  m(s3);
 }
}

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 办公室大战秘书呻吟 | 满溢游泳池免费 | 91精品国产高清久久久久久io | 无码AV精品一区二区三区 | 大胸纲手被羞羞漫画网站 | 天天色天天色天天色 | 人人做人人爽人人爱 | 男人天堂网www| 亚洲不卡视频在线观看 | 九九精品视频在线免费观看 | 国产宅男| 欧美影院天天5g天天爽 | 亚洲天堂网站在线 | 青青青国产精品国产精品久久久久 | 污漫日本E同人 | 国产白白视频在线观看2 | 精品福利视频一区二区三区 | 91精品久久国产青草 | 久久AV国产麻豆HD真实乱 | 饭冈加奈子乳喷cead144 | 成人在线播放 | 1024视频色版在线网站 | 好男人天堂网 | 亚洲人成网站在线观看播放青青 | 国产亚洲成归v人片在线观看 | 亚洲精品视频导航 | 美女扒下内裤让男人桶的图片 | 亚洲天堂视频在线播放 | www亚洲视频 | 91交换论坛 | 国产免费小视频在线观看 | 九九精品99久久久香蕉 | 欧美成人精品福利在线视频 | 亚洲精品久久久久69影院 | 亚洲va在线va天堂成人 | 午夜宅男宅女看在线观看 | 荡女人人爱全文免费阅读 | 国产日韩欧美在线播放 | 999热这里只有精品 999久久久免费精品国产牛牛 | 三级黄色片在线免费观看 | sese在线观看 |