计算出字符串中所有的数字求和 用java代码写

如题所述

2007不需要拆分成 2 ,0,0,7吧?下面是代码,希望采纳
String str="我们都是2007年3月28日参加课题设计的,对于我们来说也是第1次挑战,但结果是好的,我们做到了100%满意。";
String[] ss = str.split("\\D+");
int sum=0;
for (String string : ss) {
if(!"".equals(string)){
System.out.println(string);
sum+=Integer.parseInt(string);
}
}
System.out.println("所有的数字相加和="+sum);
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-09-24
String s = "123456";
int sum = 0;
for(int i=0,i<s.length();i++){
sum = sum + Integer.parseInt(s.substring(i,i+1));
}
System.out.println(sum);追问

里面有汉字和数字参合的!String “我们都是2007年3月28日参加课题设计的,对于我们来说也是第1次挑战,但结果是好的,我们做到了100%满意。”

第2个回答  2012-09-24
public class Test {
public static void main(String[] args) {
String str = "1fgjfa2jd";
char[] ch = str.toCharArray();
int sum = 0;
for (char c : ch) {
if (Character.isDigit(c)) {
sum += Character.getNumericValue(c);
}
}
System.out.println(sum);
}
}本回答被提问者采纳
第3个回答  2012-09-24
public class Example7_37
{
public static void main(String[] args)
{
String numStr = "123456789n0";
int ret = 0;
for(int i = 0;i < numStr.length();i++){
char c = numStr.charAt(i);
if(c >= '0' && c <= '9'){
ret += Integer.parseInt(String.valueOf(c));
}
}
System.out.println(ret);
}
}
第4个回答  2012-09-24
用正则表达式 把数字全部挖出来
然后在求和就好了。
去百度一下 数字的正则怎么写
再百度一下 求和的代码怎么写。你就成功了
细节就不告诉你了。总归要自己摸索摸索
相似回答