黑马程序员技术交流社区
标题:
大神帮我看下代码,其中有一句我想不明白
[打印本页]
作者:
136616244
时间:
2014-5-25 08:53
标题:
大神帮我看下代码,其中有一句我想不明白
import java.util.*;
public class Num2Rmb
{
private String [] hanArr = {"零","壹","贰","叁","肆","伍","陆","柒","捌","玖",};
private String [] unitArr = {"十","百","千",};
/**
把一个浮点数分解成整数部分和小数部分字符串
@param num 需要被分解的浮点数
@return 分解出来的小数部分和整数部分,第一个数组元素是整数部分,第二个数组元素是小数部分
*/
public String[] divide(double num)
{
long zheng =(long)num;
long xiao =Math.round((num - zheng)*100) ;
return new String []{zheng +"",String.valueOf(xiao)};
}
/**
将一个四位数字字符串转换成汉字字符串
@param numStr 需要被转换的数字字符串
@return 四位数字的字符串被转换成汉子字符串
*/
public String toHanstr(String numStr)
{
String result = "";
int numLen = numStr.length();
for (int i = 0;i<numLen ;i++ )
{
int num = numStr.charAt(i) - 48;
if(i!=numLen-1 & num !=0)
result+=hanArr[num]+unitArr[numLen - 2 -i];//这里的unitArr[numLen - 2 -i]是怎么得出来的,想不出是什么原因,求解释,谢谢啦!
else
result +=hanArr[num];
}
return result;
}
public static void main(String[] args)
{
Num2Rmb nr = new Num2Rmb();
System.out.print(Arrays.toString(nr.divide(236711125.123)));
System.out.print(nr.toHanstr("6109"));
}
}
复制代码
现在明白了,不过不知道昨晚这个贴为什么发布出去
作者:
532989476
时间:
2014-5-25 13:18
代码格式不好看呐
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2