【发布时间】:2013-05-20 08:59:51
【问题描述】:
现在,我有一个字符串 String time= "200hour 0minute 0second" 我想跟踪字符串中的数字并转换为第二个..如上字符串..我想获得值 200*3600.. 我的代码:
//change from hour minute to second
public String changeSecond(String time)
{
String result;
int ind_hour=time.indexOf("hour");
int ind_minute=time.indexOf("minute");
int ind_second=time.indexOf("second");
int hour=Integer.parseInt(time.substring(0, ind_hour));
int minute=Integer.parseInt(time.substring(ind_hour+1, ind_minute));;
int second=Integer.parseInt(time.substring(ind_minute+1, ind_second));
result=String.valueOf(hour*3600+minute*60+second);
return result;
}
但是当我运行 changeSecond(time)。它不起作用..我该怎么做。
【问题讨论】:
-
不要这样做。它会很容易出现错误。您不能将小时、分钟和秒作为整数传递吗?
-
究竟是什么不起作用?
-
对每个要提取的字符串使用
String.split();。 -
int minute=Integer.parseInt(time.substring(ind_hour+1+"hour".length(), ind_minute)); ?
-
其实我认为使用 split() 更好。 int hour = time.split("hour")[0]; int minute=time.split("小时")[1].splite("分钟")[0]; ......像这样的东西??
标签: java android string substring