当前位置: 首页 > news >正文

最专业网站建设公司首选wordpress 首行缩进

最专业网站建设公司首选,wordpress 首行缩进,wordpress空白主题,怎么做qq钓鱼网站在金融行业中经常需要把大写金额转成小写金额,之前在一次开发中有个类似的需求,翻阅了好多博文,都没找到合适的,故没办法,就花了点时间研究并实现! 实现代码如下: private static final Character ZERO 零;private s…

在金融行业中经常需要把大写金额转成小写金额,之前在一次开发中有个类似的需求,翻阅了好多博文,都没找到合适的,故没办法,就花了点时间研究并实现!

实现代码如下:

    private static final Character ZERO = '零';private static final String DIME = "角";private static final String CENT = "分";private static final String DOLLAR = "元";private static final String THOUSAND = "万";private static final String HUNDRED_MILLION = "亿";private static final List<Character> unitList = Arrays.asList('圆', '元', '拾', '佰', '仟', '万', '亿');static Map<Char, Integer> numberMap = new HashMap(10) {{put('零', 0);put('壹', 1);put('贰', 2);put('叁', 3);put('肆', 4);put('伍', 5);put('陆', 6);put('柒', 7);put('捌', 8);put('玖', 9);}};static Map<Char, Long> unitZeroMap = new HashMap(7) {{put('亿', 100000000L);put('万', 10000L);put('仟', 1000L);put('佰', 100L);put('拾', 10L);put('元', 1L);put('圆', 1L);}};/*** 把大写金额转换为单位为分的数字*/public static long convertMoneyNum(String money) {// 按亿/万/元(圆)/角/分拆分大写金额List<String> moneyList = buildMoneyList(money);long moneyNum = 0;long centMoneyNum = 0;for (String moneyStr : moneyList) {if (moneyStr.endsWith(DIME)) {centMoneyNum += (numberMap.get(moneyStr.charAt(0)) * 10);  // 大写角转数字分} else if (moneyStr.endsWith(CENT)) {centMoneyNum += numberMap.get(moneyStr.charAt(0));    // 大写分转数字分} else {moneyNum += convertNum(moneyStr);  // 大写亿/万/元(圆)转数字元}}// 返回计算后的数字分return moneyNum * 100 + centMoneyNum;}private static long convertNum(String moneyStr) {char[] chars = moneyStr.toCharArray();Set<Char> unitZeroList = unitZeroMap.keySet();long moneyNumber = 0;int indexNum = 0;int maxIndex = 0;Character preUnit = null;for (int i=0; i<chars.length; i++) {char currNum = chars[i];// 处理字符零if (currNum == ZERO) {preUnit = null;continue;}if (unitZeroList.contains(currNum)) {  // 处理字符为单位long unitNum = unitZeroMap.get(currNum);if (preUnit != null) {moneyNumber = moneyNumber * unitNum;preUnit = null;} else {int currIndex = unitList.indexOf(currNum);if (currIndex > maxIndex) {maxIndex = currIndex;moneyNumber = (moneyNumber + indexNum) * unitNum;} else {moneyNumber = moneyNumber + indexNum * unitNum;}preUnit = currNum;}} else {indexNum = numberMap.get(currNum);  // 处理字符为数字if (i == chars.length-1) {  // 最后一个字符为数字moneyNumber = moneyNumber + indexNum;}preUnit = null;}}return moneyNumber;}private static List<String> buildMoneyList(String money) {List<String> moneyList = new ArrayList<>();int startIndex = 0;// 亿if (money.contains(HUNDRED_MILLION)) {startIndex = buildMoneyList(HUNDRED_MILLION, moneyList, money, startIndex);}// 万if (money.contains(THOUSAND)) {startIndex = buildMoneyList(THOUSAND, moneyList, money, startIndex);}// 元if (money.contains(DOLLAR)) {startIndex = buildMoneyList(DOLLAR, moneyList, money, startIndex);}// 角if (money.contains(DIME)) {startIndex = buildMoneyList(DIME, moneyList, money, startIndex);}// 分if (startIndex < money.length()) {moneyList.add(money.substring(startIndex));}return moneyList;}private static int buildMoneyList(String unit, List<String> moneyList, String money, int startIndex) {int endIndex = money.indexOf(unit) + 1;moneyList.add(money.substring(startIndex, endIndex));return endIndex;}

已有好多年没写过博文了,今天记录哈!!!!

http://www.15wanjia.com/news/189908.html

相关文章:

  • 生产厂家上什么网站做推广好在线超级外链工具
  • 网站建设一龙条桂林最好玩的5个地方
  • 中兴豫建设管理有限公司网站网页定制
  • 网站建设公司的出路国家高新技术企业查询网站
  • 贵阳网站优化排名营销型网站制作方法
  • 制作网站需要学什么wordpress 502
  • 制作自己的网站学校短网址压缩
  • 微信小程序项目源码长沙哪里有网站推广优化
  • 宝安龙华积分商城网站建设扬州城乡建设局网站
  • 网站设计模板简约以下选项中排序正确的是
  • 自己有域名怎么做网站网页制作参考文献
  • 安徽网站建设优化推广flash网站源文件
  • 苏州网站建设外贸广东新闻联播片头
  • 建设网站可以做什么四川建设人才网官网查询
  • 商务网站建设工程师江西省城乡住房建设部网站
  • 申请域名后怎样做网站拼多多网站怎么建设的
  • 全flash网站模板滨州教育平台 网站建设
  • flash上传空间网站网站开发编辑器
  • 天津网站建设定做什么是精准营销
  • 免费创建个人网站申请西安做网站选哪家好
  • 郑州网站权重网站建设制作人员招聘要求
  • 广州企业网站建设价格欧美做爰爰爰爰网站
  • 手表东莞网站建设技术支持idc 网站源码
  • 成都各公司网站黄埔区网站建设
  • 新网站怎么做友情链接电商平台网站定制
  • 安徽省建设工程信息管理平台win10优化工具
  • 建设公司营销网站网站开发公司是干嘛的
  • 做外贸需要哪些网站有哪些手机界面app界面设计分析
  • 九千营销工作室介绍搜索广告优化
  • 建设礼品网站的策划书商务网站开发的的基本流程