1 /**
2 * 根据输入的中文转为数字
3 * @param String chineseNumber
4 * @return int
5 */
6 public static int chineseNumber2Int(String chineseNumber){
7 String state=
chineseNumber;
8 int result=0
;
9
10 if(state=="" || state==
null){
11 try {
12 throw new Exception("输入不合法!"
);
13 }
catch (Exception e) {
14 // TODO Auto-generated catch block
15 e.printStackTrace();
16 }
17 }
18 else if(state.contains("千")||state.contains("百") || state.contains("十"
)){
19 int temp = 1;
//存放一个单位的数字如:十万
20 int flag = 0;
//判断是否有中文数字的单位
21 char[] cnArr =
new char[]{'一','二','三','四','五','六','七','八','九'
};
22 char[] chArr =
new char[]{'十','百','千','万','亿'
};
23 //遍历输入的中文
24 for (
int i = 0; i < state.length(); i++
) {
25 boolean isCHUnit =
true;
//判断是否是chArr
26 char c = state.charAt(i);
//字符
27 //判断是否数字
28 for (
int j = 0; j < cnArr.length; j++) {
//非单位,即数字
29 if (c ==
cnArr[j]) {
30 if(0 !=
flag){
31 //添加下一个单位之前,先把上一个单位值添加到结果中
32 result +=
temp;
33 //临时值重置
34 temp = 1
;
35 flag = 0
;
36 }
37 // 下标+1,就是对应的值
38 temp = j + 1
;
39 isCHUnit =
false;
40 break;
41 }
42 }
43 //判断是否单位
44 if(isCHUnit){
//单位{'十','百','千','万','亿'}
45 for (
int j = 0; j < chArr.length; j++
) {
46 if (c ==
chArr[j]) {
47 switch (j) {
48 case 0
:
49 temp *= 10
;
50 break;
51 case 1
:
52 temp *= 100
;
53 break;
54 case 2
:
55 temp *= 1000
;
56 break;
57 case 3
:
58 temp *= 10000
;
59 break;
60 case 4
:
61 temp *= 100000000
;
62 break;
63 default:
64 break;
65 }
66 flag++
;
67 }
68 }
69 }
70 if (i == state.length() - 1) {
//遍历到最后一个字符
71 result +=
temp;
72 }
73 }
74 }
75 else{
76 int temp=1
;
77 String tempS=""
;
78 char[] cnArr =
new char[]{'一','二','三','四','五','六','七','八','九'
};
79 for (
int i = 0; i < state.length(); i++
) {
80 char c = state.charAt(i);
//字符
81 if(c=='零'
){
82 temp=0
;
83 }
84 else{
85 for (
int j = 0; j < cnArr.length; j++) {
//非单位,即数字
86 if (c ==
cnArr[j]) {
87 temp = j + 1
;
88 break;
89 }
90 }
91 }
92
93 tempS+=
temp;
94 }
95
96 result=
Integer.parseInt(tempS);
97 }
98 System.out.println(result);
99 return result;
100 }
转载于:https://www.cnblogs.com/Lxiaojiang/p/6593400.html
相关资源:各显卡算力对照表!