0
点赞
收藏
分享

微信扫一扫

金额转换转为中文大写---Java

键盘录入一个金额,实现大写转换

例如:

键盘输入:321

结果输出:叁佰贰拾壹

package string.practice;

import java.util.Scanner;

/*
 * 键盘录入一个金额,实现大写转换
 * 例如:
 * 键盘输入:321
 * 结果输出:叁佰贰拾壹
 */
import java.util.Scanner;
public class MoneyZhuanHuan {
	public static void main(String[] args) {
		//键盘录入金额			
		Scanner xc=new Scanner(System.in);
		
		int money;
		while(true) {
			System.out.println("请输入要转换的金额:");
			money=xc.nextInt();
			//判断输入的金额是否合理
			if(money>=0&&money<=9999999){
				break;
			}
			else {
				System.out.println("输入金额错误!");
				System.out.println("请重新输入:");
			}
		}
		
		String moneyChar="";
		//得到money里的每一个数字
		while(true) {
			int ge=money%10;
			//把分下来的数字变成大写
			String bigChinese=getBigChinese(ge);
			//把转换出来的大写存入moneyChar中
			moneyChar=bigChinese+moneyChar;
			
			money=money/10;
			
			//若money的值为0时,则循环结束
			if(money==0) {
				break;
			}
		}
		
		//在转换后的前面补零,补齐七位
		int count;
		count=7-moneyChar.length();
		for(int i=0;i<count;i++) {
			moneyChar="零"+moneyChar;
		}
	
		//定义单位
		//将单位存入数组
		String[] DanWei={"佰","拾","万","仟","佰","拾","元"};
		String result="";
		for(int i=0;i<moneyChar.length();i++) {
			//将单位一次插入大写金额中
			//遍历一遍大写金额
			char c=moneyChar.charAt(i);
			//把大写数字和单位拼接到result中
			result=result+c+DanWei[i];
			
			
		}
    System.out.println("转换后的金额为:");
		System.out.println(result);
	}
	
	
	
	//定义一个方法,把输入的数字变成大写的中文
	//1---壹
	public static String getBigChinese(int number) {
		//定义大写的数组,用下标对应
		String[] arr={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};
		return arr[number];
	}
}

案例结果:

金额转换转为中文大写---Java_金额转换

举报

相关推荐

0 条评论