首页 > 编程语言 >JavaSE——金额转换

JavaSE——金额转换

时间:2023-03-02 22:23:27浏览次数:29  
标签:转换 int money 金额 System str println JavaSE out

package com.zhao.stringtest;

import java.util.Scanner;

public class Test3 {
    //金额转换
    //查表法
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请录入金额:");
        int money;
        while (true){
            money=sc.nextInt();
            if (money>=0){
                break;
            }else {
                System.out.println("输入不合法!");
            }
        }
        //转换数字
        //得到每一位的数字并循环使用转换方法
        String str="";//创建一个字符串对象用于拼接获得的每一个大写中文数字
        while (true){
            int ge=money%10;//得到个位
            money=money/10;//得到去掉个位后的新数,并重复循环得到每一次新的个位数
            str=getCaptialNumber(ge)+str;
            if (money==0){
                break;//获得完最大一位数之后,跳出循环
            }
        }
        System.out.println(str);

        //限定长度为7位数,计算出空的位数有几个,空的位数向前补零
        int count=7-str.length();
        for (int i = 0; i < count; i++) {
            str='零'+str;
        }
        System.out.println(str);

        //插入单位,单位正好也是七位,所以可以循环插入
        //创建一个单位数组
        char[] unitArr={'佰','拾','万','仟','佰','拾','元'};
        //创建一个结果字符串用于记录
        String result="";
        for (int i = 0; i < str.length(); i++) {
            //获取字符串中单个字符charAt()方法
            char c=str.charAt(i);
            result=result+c+unitArr[i];
        }
        //打印结果
        System.out.println(result);

    }

    //写一个方法,创建一个数组,用于根据0-9的数字当作索引
    //返回数字对应每一个大写中文数字
    //chars[0]-->零
    public static char getCaptialNumber(int index){
        char[] chars={'零','壹','贰','叁','肆','伍','陆','柒','捌','玖'};
        return chars[index];
    }

}

标签:转换,int,money,金额,System,str,println,JavaSE,out
From: https://www.cnblogs.com/javaHane/p/17173769.html

相关文章

  • java转换
    16进制转十进制:inti= Integer.parseInt(str,16);Integer.parseInt(str.substring(2),16);带有0x标识的十六进制数,需要截去前面两位标识。十进制转二......
  • 数据转换工具DBT介绍及实操
    一、什么是DBTdbt(databuildtool)是一款流行的开源数据转换工具,能够通过SQL实现数据转化,将命令转化为表或者视图,提升数据分析师的工作效率。dbt主要功能在于转换数据......
  • LT8911EXB-MIPI转EDP视频转换芯片功能特性及概述
    LT8911EXB:MIPI®DSI/CSIBridgetoeDP 1.特性●单端口MIPI®DSI接收器◆符合D-PHY1.2、DSI1.3、CSI1.3标准◆1个时钟通道和1~4个可配置的数据通道......
  • JavaSE API
    JavaSEAPI排序java.lang.Comparablejava.lang.Comparatorjava.lang.Object它是所有类型的根父类一个类如果没有显式声明它的父类,这个类的直接父类就是Object理解......
  • 数据类型转换关系
    //数据类型的扩展位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数。字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示,1B(byte,字节)=8bit......
  • powershell convertTo-json 命令遇到数组只有一个元素 转换为 object 的解决方法
    如题,比如我要Get-NetRoute|ConvertTo-Json获取子网掩码如果结果数组长度大于1那么输出结果是这样的[{...},{...},{...},{...},]但是如果结果数组......
  • javaSE学习四
    Super/*super注意点:1.super调用父类的构造方法,必须在构造方法的第一一个2.super必须只能出现在子类的方法或者构造方法中!3.super和this不能同时调用构......
  • JavaSE——==与.equal()方法
    ==号的作用比较基本数据类型:比较的是具体的值比较引用数据类型:比较的是对象地址值packagecom.zhao.stringdemo;publicclassStringDemo2{publicstati......
  • JavaSE——String
    String类概述String类代表字符串,Java程序中的所有字符串文字(例如“abc”)都被实现为此类的实例。也就是说,Java程序中所有的双引号字符串,都是String类的对象。String......
  • inputStream和outputStream互相转换
    inputStream转换成outputStreampackageorg.example.base.controller;importlombok.AllArgsConstructor;importorg.springframework.web.bind.annotation.GetMapping;imp......