public class Num2Rmb
{
private static String[] hanArr = {"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};
private static String[] unitArr

展开全部
收起
5回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • Robert

    18人对此回答表示赞同

    int xiaoshu =(int) Math.round( ( num - zhengshu )*100 ); 这行限定了只显示小数点后面的两位数,而输入的test数小数点后的数字位数大于2 仁兄可再考虑用其他的方法实现这行的功能
    展开
    18
    0回复
    发布于 5年前

    评论(0)

    收起评论

  • Mateo

    13人对此回答表示赞同

    报的是越界异常

    int xiaoshu =(int) Math.round( ( num - zhengshu )*100);
    改为
    int xiaoshu =(int) Math.round( ( num - zhengshu )*10000);
    并将测试的数据改double test = 1948.34改为double test = 1948.3434(小数位四位)
    就是保证你输入的整数位和小数位都是四位。
    分析原因:
    展开
    13
    0回复
    发布于 5年前

    评论(0)

    收起评论

  • Teagan

    7人对此回答表示赞同

    代码有误啊。testdivide[1]是小数部分,小数明明长度是2 你却 FourDigitZhengshu.charAt(3) 。同样 for 的 FourDigitZhengshu.charAt 循环内也超字符串长度了
    展开
    7
    0回复
    发布于 5年前

    评论(0)

    收起评论

  • 孤独彼岸

    4人对此回答表示赞同

    那一长串英文标识你引用字符串中字符下标越界 (字符串长度只有 2 但是你引用了第 3 个字符)
    比如
    String hello = "Hello";
    hello.charAt(0); // ok, value is 'H'
    hello.charAt(1); // ok, value is 'e'
    hello.charAt(4); // ok, value is 'o'
    hell
    展开
    4
    0回复
    发布于 5年前

    评论(0)

    收起评论

  • 画心

    3人对此回答表示赞同

    小数位不够三位还硬要取
    展开
    3
    0回复
    发布于 5年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部