永发信息网

for循环的问题,请高手指点一下!

答案:1  悬赏:50  手机版
解决时间 2021-06-01 14:56

import java.util.Scanner;

public class Change {


public static String numtochinese(String input){
String s1="零壹贰叁肆伍陆柒捌玖";
String s4="分角整元拾佰仟万拾佰仟亿拾佰仟";
String temp="";
String result="";
if (input==null) return "输入字串不是数字串只能包括以下字符('0'~'9','.'),输入字串最大只能精确到仟亿,小数点只能两位!";
temp=input.trim();
float f;
try{
f=Float.parseFloat(temp);

}catch(Exception e){return "输入字串不是数字串只能包括以下字符('0'~'9','.'),输入字串最大只能精确到仟亿,小数点只能两位!";}
int len=0;
if (temp.indexOf(".")==-1) len=temp.length();
else len=temp.indexOf(".");
if(len>s4.length()-3) return("输入字串最大只能精确到仟亿,小数点只能两位!");
int n1,n2=0;
String num="";
String unit="";

for(int i=0;i<temp.length();i++){
if(i>len+2){break;}
if(i==len) {continue;}
n1=Integer.parseInt(String.valueOf(temp.charAt(i)));
num=s1.substring(n1,n1+1);
n1=len-i+2;
unit=s4.substring(n1,n1+1);
result=result.concat(num).concat(unit);
}
if ((len==temp.length())||(len==temp.length()-1)) result=result.concat("整");
if (len==temp.length()-2) result=result.concat("零分");
return result;
}
public static void main(String[] args) {
// TODO 自动生成方法存根
Scanner s = new Scanner(System.in);
System.out.print("输入钱数:");
String string = String.valueOf(s.nextDouble());

Change c = new Change();
System.out.println(c.numtochinese(string));
}

}

运行结果:
输入钱数:456.54
肆佰伍拾陆元伍角肆分

 

 

 

 

 

我不懂其中一点就是:

for(int i=0;i<temp.length();i++){
if(i>len+2){break;}
if(i==len) {continue;}
n1=Integer.parseInt(String.valueOf(temp.charAt(i)));
num=s1.substring(n1,n1+1);
n1=len-i+2;
unit=s4.substring(n1,n1+1);
result=result.concat(num).concat(unit);
}
if ((len==temp.length())||(len==temp.length()-1)) result=result.concat("整");
if (len==temp.length()-2) result=result.concat("零分");
return result;
}

i==len这个怎么会怎么会成立呢?很是不解啊?请高手指点一下!

最佳答案
有小数点了 它为什么不成立啊 这不很正常么 i递增 只要len取了小数点位置 而不是temp.length 它就可以成立啊
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
男人和女友发生了性关系?他还会抛弃她吗?
户口能不能办银行卡?
人几天排一次便是好的?
为什么老吵架?
我想把原来的系统删了.重新装个系统..怎么样
谁能发一注500万的号码给我呢
求《还珠之太后驾到》VIP章节
我给你的第一印象是什么?
想给孩子买个学习机,买什么牌子的好?
为什么上网时间过长眼睛会胀痛?该怎么避免?
谁可以*到自己的肘呢?*不到的原因是什么?
浑身起小红疱
洛阳女儿惜颜色,行逢落花长叹息. 今年花落颜
为什么下载了QQ2010不可以用
qq宠物中布袋长老在那里?
推荐资讯
为什么进qq空间会有东西弹出来?
怎么可以让大腿变细?注意是大腿!详细点哦
哪位愿意带我玩英雄岛!
开淘宝网店卖虚拟能赚到钱吗
大家好~~~请教:06年格力五匹天井机,通电就
谁来帮帮我翻译啊
WOW暗夜猫德天赋怎么加好 ?
地下城维修时间?
快4年的单恋我是否该放弃了。因为他已经有喜
炫舞每天在线最少多长时间 会有星级舞者五星
阿鼻地狱有几位佛?
17909怎么往日本熊本打电话?急急急!!
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?