/*** Java实现中文数字转换为阿拉伯数字* * * @author WQ**/
public class Demo26 {public static void main(String[] args) {int chineseNumber2Int = chineseNumber2Int("十万一千");System.out.println(chineseNumber2Int);}private static int chineseNumber2Int(String chineseNumber) {int result = 0;int temp = 1;// 存放一个单位的数字如:十万int count = 0;// 判断是否有chArrchar[] cnArr = new char[] { '一', '二', '三', '四', '五', '六', '七', '八', '九' };char[] chArr = new char[] { '十', '百', '千', '万', '亿' };for (int i = 0; i < chineseNumber.length(); i++) {boolean b = true;// 判断是否是chArrchar c = chineseNumber.charAt(i);for (int j = 0; j < cnArr.length; j++) {// 非单位,即数字if (c == cnArr[j]) {if (0 != count) {// 添加下一个单位之前,先把上一个单位值添加到结果中result += temp;temp = 1;count = 0;}// 下标+1,就是对应的值temp = j + 1;b = false;break;}}if (b) {// 单位{'十','百','千','万','亿'}for (int j = 0; j < chArr.length; j++) {if (c == chArr[j]) {switch (j) {case 0:temp *= 10;break;case 1:temp *= 100;break;case 2:temp *= 1000;break;case 3:temp *= 10000;break;case 4:temp *= 100000000;break;default:break;}count++;}}}if (i == chineseNumber.length() - 1) {// 遍历到最后一个字符result += temp;}}return result;}}

JAVA常见算法题(二十五)相关推荐

  1. JAVA常见算法题(三十二)---找规律

    题目一: 4,5,15,45,135,405,__ 题目二: 524,244,954,674,394,15,725, __ 题目三: 7,8,6,9,10,7,4,4,5,__ 求横线位置的整数. * ...

  2. JAVA入门算法题(十五)

    一.满二叉搜索树 /*** 给定一个二叉树的层序遍历判断是不是一颗满二叉搜索树*/ 大致分为这么几步: 1.处理输入 2.根据满二叉树的节点数量进行排除 3.构建树 4.递归判断 public sta ...

  3. JAVA常见算法题(三十)

    package com.forezp.util;import java.io.BufferedReader; import java.io.FileReader; import java.io.Inp ...

  4. JAVA入门算法题(十二)

    一.最大利润 题目: /***给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格.* 如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润.* 注意 ...

  5. 【Java学习笔记之二十五】初步认知Java内部类

    可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一个非常有用的特性但又比较难理解使用的特性(鄙人对内部类也只是略知一二). 第一次见面 内部类我们从外面看是非常容易理解的,无非就是在 ...

  6. JAVA入门算法题(十四)

    一.最小的淘气值 题目: /*** 老师要给学生安排座位,经统计教室有N个双人桌,M名学生,每个学生有一个淘气值,* 要合理安排座位,使得班内同桌之和的淘气值最大值尽可能的小,输出最小值.*/ 这是一 ...

  7. JAVA常见算法题(三十一)---冒泡排序

    package com.jege.spring.boot.hello.world;/*** java算法之冒泡排序<br>* 将数组按照从大到小的顺序排列<br>* * * @ ...

  8. Java真的不难(二十五)Stream流

    Stream流 上篇文章讲了Java 8 的一个新特性:Lambda表达式,在业务中若能熟练的使用,可以节省很多代码量,看着也整洁很多.那么这篇文章将介绍另一个新特性:Stream流,不要看错哈!!! ...

  9. 机器学习算法(二十五):KD树详解及KD树最近邻算法

    目录 1 KD树 1.1 什么是KD树 1.2 KD树的构建 1.3 KD树的插入 1.4 KD树的删除 1.5 KD树的最近邻搜索算法 1.5.1 举例:查询点(2.1,3.1) 1.5.2 举例: ...

最新文章

  1. Java项目:嘟嘟二手书商城系统(java+JSP+Springboot+maven+mysql+ThymeLeaf+FTP)
  2. 环境变量、用户变量、系统变量
  3. python语言入门m-Python入门基础三-函数
  4. Android P 调用隐藏API限制原理
  5. 拍摄半身照,模特的手可以放哪儿?
  6. Golang中unsafe.Sizeof()的问题
  7. 机器学习基础(四十四)—— 优化
  8. php监测tomcat,java_JAVA实现监测tomcat是否宕机及控制重启的方法,本文实例讲述了JAVA实现监测tom - phpStudy...
  9. ELK 学习笔记之 elasticsearch Bulk操作
  10. 基于卫星高度计海面高度异常资料获取潮汐调和常数方法及应用matlab代码
  11. 语音识别(Speech Recognition)
  12. 开启nexus出现If you insist running as root, then set the environment variable RUN_AS_USER=root
  13. 富爸爸,穷爸爸系列书籍目录
  14. Python 解压压缩包至文件夹、把整个文件夹打包至压缩包
  15. 代码风格自动化(二)——husky + lint-staged
  16. 20170322埃森哲电话面试
  17. Vuex是如何工作的?
  18. JavaScript高手之路:隔行异色效果
  19. VS2010类向导窗口太大
  20. c语言建立全局变量,C语言全局变量和局部变量

热门文章

  1. 电脑联网了但不能上网_电脑联网不能用,求助
  2. linux逻辑或的用法,第三课 Linux逻辑运算符
  3. android屏幕共享实现方式,基于WebRtc在Android端实现屏幕共享
  4. 字段定义_SAP 物料主数据增强自定义字段
  5. oracle暂停索引,Oracle索引被抑制情况
  6. 江西工业职业技术学院计算机专业在哪个校区,江西工业职业技术学院几个校区...
  7. linux怎么看系统盘,Linux系统怎么查看电脑的磁盘空间?
  8. 我的世界基岩版种子和java版种子_我的世界:对萌新最友好的种子,基岩版通用,对老玩家也很适合!...
  9. 计算机组成安徽大学,2安徽大学《计算机组成与结构》B卷及答案.pdf
  10. linux测试dvi接口,TeX Live DVI字体数据解析整数溢出漏洞