遇到一个很有意思的题目,输入一个中文数字的字符串,然后输入字符串所代表的值。
自己的思路:
- 首先想到了映射,就是把中文数字映射为数字,HashMap的
import java.util.List;
import java.util.Map;
/**
* 中文数字转换为阿拉伯数字
*
* @author maling
*
*/
public class HanziToNum2 {
private static long result = 0;
// HashMap
private static Map<String, Long> unitMap = new java.util.HashMap<String, Long>();
private static Map<String, Long> numMap = new java.util.HashMap<String, Long>();
// 字符串分离
private static String stryi = new String();
private static String stryiwan = new String();
private static String stryione = new String();
private static String strwan = new String();
private static String strone = new String();
public static void ChangeChnString(String chnStr) {
// unit
unitMap.put("十", 10L);
unitMap.put("百", 100L);
unitMap.put("千", 1000L);
unitMap.put("万", 10000L);
unitMap.put("亿",