首页 > 代码库 > 万以内的字符串整数变成汉子字符串
万以内的字符串整数变成汉子字符串
import java.util.Arrays;import java.util.Scanner;public class Num2Rmb{ private String[] hanArr = {"零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"}; private String[] unitArr = {"十", "百", "千", "万"}; private String toHanStr(String numStr) { String result = ""; boolean flag = false; int numLen = numStr.length(); for(int i = 0; i < numLen; i++) { int num = numStr.charAt(i) - 48; if(i < numLen -1&&num != 0){ result += hanArr[num] + unitArr[numLen - 2 - i]; if(flag == false) flag = true; } else{ while(num == 0 && i < numLen - 1){ i++; num = numStr.charAt(i) - 48; } if(flag == false && i == numLen - 1) result += hanArr[num]; else{ if(num != 0 && i < numLen - 1){ int tempnum = numStr.charAt(i - 1) - 48; if(tempnum == 0 && flag) result += hanArr[0]; result += hanArr[num] + unitArr[numLen - 2 - i]; if(flag == false) flag = true; } if(num != 0 && i == numLen -1){ int tempnum = numStr.charAt(i - 1) - 48; if(tempnum == 0) result += hanArr[0]; result += hanArr[num]; if(flag == false) flag = true; } } } } return result; } public static void main(String[] args) { Num2Rmb nr = new Num2Rmb(); Scanner sc = new Scanner(System.in); while(true){ System.out.print("输入任意一个整数:"); String str = sc.nextLine(); System.out.println(nr.toHanStr(str)); } }}
万以内的字符串整数变成汉子字符串
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。