`
zeyuphoenix
  • 浏览: 55910 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

收集面试题(二)(转换数字为汉字)

阅读更多
输入数字,转换为汉字:
/**
	 * @param args
	 */
	public static void main(String[] args) {

		System.out.println(changeNumber(123003098));
	}

	public static String changeNumber(int number) {

		StringBuffer buffer = new StringBuffer("");
		char[] nums = Integer.valueOf(number).toString().toCharArray();

		int length = nums.length;

		if (length % 4 == 0) {

			for (int i = 0; i < length / 4; i++) {

				for (int j = 0; j < 4; j++) {
					if (j == 3
							&& Integer.valueOf(String.valueOf(nums[i * 4 + j])) == 0) {
						break;
					}
					buffer.append(valueReturn(nums[i * 4 + j])
							+ addReturn(j - 3));
				}

				buffer.append(addReturn(length / 4 - i - 1));
			}
		} else {
			int over = length % 4;
			for (int j = 0; j < over; j++) {
				buffer.append(valueReturn(nums[j]) + addReturn(j - over + 1));
			}
			buffer.append(addReturn(length / 4));
			for (int i = 0; i < length / 4; i++) {

				for (int j = 0; j < 4; j++) {
					if (j == 3
							&& Integer.valueOf(String.valueOf(nums[i * 4 + j
									+ over])) == 0) {
						break;
					}
					buffer.append(valueReturn(nums[i * 4 + j + over])
							+ addReturn(j - 3));
				}

				buffer.append(addReturn(length / 4 - i - 1));
			}
		}

		return buffer.toString();
	}

	private static String addReturn(int info) {
		String value = "";
		switch (info) {
		case -3:
			value = "仟";
			break;
		case -2:
			value = "佰";
			break;
		case -1:
			value = "拾";
			break;
		case 0:
			value = "";
			break;
		case 1:
			value = "萬";
			break;
		case 2:
			value = "亿";
			break;
		case 3:
			value = "萬亿";
			break;
		case 4:
			value = "亿亿";
			break;
		default:
			break;
		}

		return value;
	}

	private static String valueReturn(char info) {
		String value = "";
		int select = Integer.valueOf(String.valueOf(info));
		switch (select) {
		case 0:
			value = "零";
			break;
		case 1:
			value = "壹";
			break;
		case 2:
			value = "贰";
			break;
		case 3:
			value = "叁";
			break;
		case 4:
			value = "肆";
			break;
		case 5:
			value = "伍";
			break;
		case 6:
			value = "陆";
			break;
		case 7:
			value = "柒";
			break;
		case 8:
			value = "捌";
			break;
		case 9:
			value = "氿";
			break;
		default:
			break;
		}
		return value;
	}
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

Global site tag (gtag.js) - Google Analytics