package test; import java.util.HashMap; import java.util.Map; import java.util.Scanner; public class ShuZiZhuanHanZi { public static void main(String[] args) { String jg = ""; Scanner input = new Scanner(System.in); System.out.print("请输入要转换的数字:"); int i = input.nextInt(); String d = ""; String n = String.valueOf(i); StringBuffer sb = new StringBuffer(n); n = sb.reverse().toString(); // 将字符串倒叙 Map<Integer, String> map = new HashMap<Integer, String>( ); for (int j = 0; j < n.length(); j++) { d = String.valueOf(n.charAt(j)); // 对map集合赋值 map.put(j, d); } for (Integer in : map.keySet()) { // 遍历map集合 String str = map.get(in); /*System.out.println(in + " " + str);*/ switch(str){ case "1":str="一";break; case "2":str="二";break; case "3":str="三";break; case "4":str="四";break; case "5":str="五";break; case "6":str="六";break; case "7":str="七";break; case "8":str="八";break; case "9":str="九";break; case "0":str="零";break; } switch (in) { case 0: jg+= str; break; case 1: jg+= "十"+str; break; case 2: jg+= "百"+str;break; case 3: jg+= "千"+str;break; case 4: jg+= "万"+str;break; case 5: jg+= "十"+str;break; case 6: jg+= "百"+str;break; case 7: jg+= "千"+str;break; case 8: jg+= "亿"+str;break; } } StringBuffer sbi = new StringBuffer(jg); jg = sbi.reverse().toString(); if("一十".equals(jg.substring(0, 2))){ jg = jg.substring(1); if("零".equals(jg.substring(jg.length()-1,jg.length()))){ jg = jg.substring(0,jg.length()-1); System.out.println(jg); }else{ System.out.println(jg); } } if("零".equals(jg.substring(jg.length()-1,jg.length()))){ jg = jg.substring(0,jg.length()-1); System.out.println(jg); } else{ System.out.println(jg); } } }
java数字转汉字
最新推荐文章于 2024-07-13 02:49:28 发布