分离给定字符串集中的字符和数字,仅添加数字

时间:2014-07-16 05:34:10

标签: java

这是我的代码,我想从给定的字符串值中只计算整数。

例如:abc123as34输出:13 这里忽略字符串只有数字应该计算,

3 个答案:

答案 0 :(得分:3)

一种方法是循环遍历字符串中的每个字符,检查它是否为数字。如果是这样,请将其添加到某种total变量中。例如:

String str = "abc123as34";

int total = 0;
for (char c : str.toCharArray()) {
    if (Character.isDigit(c)) {
        total += Character.getNumericValue(c);
    }
}   
System.out.println(total);

答案 1 :(得分:1)

试试这个:

 class Calc

{
   public static void main (String[] args) 
{
 String s="123ab3";
 char[] d=s.toCharArray();
 int total=0;
 for(int i=0;i<d.length;i++)
 {
   try
  {
     total=total+Integer.parseInt(""+d[i]);
     System.out.println(""+total);
  }
  catch(Exception e)
  {
    System.out.print("not no");
  }
}
 System.out.print("total="+total);
   }
 }

输出显示:

      total=9

答案 2 :(得分:0)

您可以逐个循环遍历字符串中的字符,并将每个字符汇总为数字:

public static int sumInts(String str) {
  int sum = 0;
  for (char c : str.toCharArray()) {
    if (Character.isDigit(c)) {
      sum += Character.getNumericValue(c);
    }
  }
  return sum;
}