java面试编程题------ 根据输入的数字,转化为相应的字符串。(123456 ---> 一十二万三千四百五十六圆)

/**
	 * 根据输入的数字,转化为相应的字符串;如 123456 ---> 一十二万三千四百五十六圆
	 * @param number
	 * @return
	 */
	public String getString(int number){
		//将 number 转化为字符串数组
		String str=number+"";
		String[] array=new String[str.length()];
		for(int i=0;i=0;i-=4,j++){
			if(i-1>=0){
				array[i-1]=array[i-1]+"十";
			}
			if(i-2>=0){
				array[i-2]=array[i-2]+"百";
			}
			if(i-3>=0){
				array[i-3]=array[i-3]+"千";
			}
			
			switch(j){
				case 1:
					array[i]=array[i]+"圆";
					break;
				case 2:
					array[i]=array[i]+"万";
					break;
				case 3:
					array[i]=array[i]+"亿";
			}
		}
		//将 字符串数组 转化为字符串
		StringBuffer sb=new StringBuffer();
		for(int i = 0; i < array.length; i++){
			sb.append(array[i]);
		}
		str=sb.toString();
		
		//将数字 转化为 汉字
		str=str.replaceAll("1", "一");
		str=str.replaceAll("2", "二");
		str=str.replaceAll("3", "三");
		str=str.replaceAll("4", "四");
		str=str.replaceAll("5", "五");
		str=str.replaceAll("6", "六");
		str=str.replaceAll("7", "七");
		str=str.replaceAll("8", "八");
		
		return str;
	}

你可能感兴趣的:(面试)