public class MoneyDemo {
\x05private final String[] str1 = { "元","拾","佰","仟","萬","拾","佰","仟","億" };
\x05private final String[] str2 = { "零","壹","貳","叁","肆","伍","陸","柒",
\x05\x05\x05"捌","玖" };
\x05private final String[] str3 = { "角","分" };
\x05public static void main(String[] args) {
\x05\x05double n = 1102001.52;
\x05\x05String str = new MoneyDemo().convert(n);
\x05\x05System.out.println(str);
\x05}
\x05public String convert(double n) {
\x05\x05String str = String.valueOf(n);//將 double 變量 n 轉(zhuǎn)換成字符串
\x05\x05String temp1 = str.substring(0,str.indexOf("."));//進(jìn)行切割,temp1=1102001
\x05\x05String temp2 = str.substring(str.indexOf(".") + 1);//進(jìn)行切割,temp2=52
\x05\x05int k = -1;
\x05\x05int len = -1;
\x05\x05StringBuffer sb = new StringBuffer();
\x05\x05len = temp1.length() - 1;//len=6
\x05\x05// 1234
\x05\x05boolean flag = true;
\x05\x05for (int i = 0; i < temp1.length(); i++) {
\x05\x05\x05k = Integer.parseInt(temp1.substring(i,i + 1));//得到temp1的每位數(shù)字,1、1、0、2、0、0、1
\x05\x05\x05if (k != 0) {
\x05\x05\x05\x05sb.append(str2[k]).append(str1[len - i]);//str2[k]為temp1非零數(shù)的對(duì)應(yīng)的大寫數(shù)字、str1[len - i]為temp1拿到對(duì)應(yīng)的單位
\x05\x05\x05\x05flag = true;
\x05\x05\x05} else {
\x05\x05\x05\x05if (flag) {
\x05\x05\x05\x05\x05if (len - i == 4) {
\x05\x05\x05\x05\x05\x05sb.append(str1[4]);
\x05\x05\x05\x05\x05\x05continue;
\x05\x05\x05\x05\x05}
\x05\x05\x05\x05\x05sb.append(str2[0]);
\x05\x05\x05\x05}
\x05\x05\x05\x05flag = false;
\x05\x05\x05}
\x05\x05}
\x05\x05for (int i = 0; i < 2; i++) {
\x05\x05\x05k = Integer.parseInt(temp2.substring(i,i + 1));//拿到少于一元的數(shù)字,5、2
\x05\x05\x05sb.append(str2[k]).append(str3[i]);//得到伍角貳分
\x05\x05}
\x05\x05return sb.toString();
\x05}
}
誰能詳細(xì)地給我講解一下這個(gè)程序
誰能詳細(xì)地給我講解一下這個(gè)程序
public class MoneyDemo {
private final String[] str1 = {"元","拾","佰","仟","萬","拾","佰","仟","億"};
private final String[] str2 = {"零","壹","貳","叁","肆","伍","陸","柒","捌","玖"};
private final String[] str3 = {"角","分"};
public static void main(String[] args){
double n = 1102001.52;
String str = new MoneyDemo().convert(n);
System.out.println(str);
}
public String convert(double n)
{
String str = String.valueOf(n);
String temp1 = str.substring(0,str.indexOf("."));
String temp2 = str.substring(str.indexOf(".")+1);
int k = -1;
int len = -1;
StringBuffer sb = new StringBuffer();
len = temp1.length()-1;
//1234
boolean flag=true;
for(int i=0; i
public class MoneyDemo {
private final String[] str1 = {"元","拾","佰","仟","萬","拾","佰","仟","億"};
private final String[] str2 = {"零","壹","貳","叁","肆","伍","陸","柒","捌","玖"};
private final String[] str3 = {"角","分"};
public static void main(String[] args){
double n = 1102001.52;
String str = new MoneyDemo().convert(n);
System.out.println(str);
}
public String convert(double n)
{
String str = String.valueOf(n);
String temp1 = str.substring(0,str.indexOf("."));
String temp2 = str.substring(str.indexOf(".")+1);
int k = -1;
int len = -1;
StringBuffer sb = new StringBuffer();
len = temp1.length()-1;
//1234
boolean flag=true;
for(int i=0; i
其他人氣:294 ℃時(shí)間:2020-05-19 03:47:45
優(yōu)質(zhì)解答
我來回答
類似推薦
- 這個(gè)程序錯(cuò)誤在哪里?
- 大氣層是怎樣分層的?有多少層?每層密度怎樣?
- z=x^3y-3x^2y^3的二階偏導(dǎo)數(shù)
- ①已知a²+a-3=0 那么a²(a+4)的值是___
- 莎士比亞十四行詩哪些比較著名?
- 因?yàn)?/2×4/3×3/2=1,所以1/2、4/3、3/2三個(gè)數(shù)互為倒數(shù).
- 2011年4月1日泰國(guó)發(fā)生洪災(zāi),季風(fēng)來自太平洋還是印度洋?
- 1.25:x=2.5:8怎么解
- 韓愈《馬說》的問題
- -4x的平方+25分解因式
- I think Bill Gates is a very _________(creative) man.先回答,
- 以歷史、時(shí)間為本體寫個(gè)比喻句
猜你喜歡
- 1(25加4分之3)除以4分之1加4分之1,脫式計(jì)算
- 2Can A Chinese Young Lady Become An American Woman?
- 31.宇航員身穿沉重的宇航服,還能行走自如,可能是因?yàn)椋?/a>
- 4描寫春夏秋冬好詞好句
- 5英語翻譯
- 6簡(jiǎn)要廉頗和藺相如的故事 200字左右 好的話另加分
- 7伊紅美藍(lán)培養(yǎng)基是什么培養(yǎng)基
- 8德語怎么說 我覺得 我認(rèn)為 相當(dāng)于英語的I think
- 9(一減二分之一)(三分之一減一)(一減四分之一)(五分之一減一)……(2009分之1減1)(,一減2010分之一)
- 10扣取百分之20的手續(xù)費(fèi),你必須獲利50元,該定什么價(jià)格.
- 11a為和值時(shí)適合條件x+y=2a+1和x-y=3a-2的點(diǎn)(x,y)在二象限(第二象限上的點(diǎn)(x,y)滿足x<0 y>0)
- 12證明:兩條邊上的高相等的三角形是等腰三角形.