想要添加两个字符串元素,我怎么能这样做?

时间:2014-06-10 17:44:32

标签: java

想要添加两个数组的元素。就像,

假设string1=123string2=456

结果将是result= string1+string2=579;

我怎么能在java中这样做。请帮忙。我试过但失败了。

我的代码是:

import java.util.Scanner;
class sAdd{
double result=0;
String line1,line2;
void input(){
    System.out.println("Enter The String");
    Scanner sc=new Scanner(System.in);
    line1 = sc.nextLine();
    System.out.println("Enter The String2");
    line2 = sc.nextLine();
}
void calc(){ 
 char[] ch=line1.toCharArray();
 char[] ch1=line2.toCharArray();
 int d=line1.length();
 System.out.println(d);
 for(int i=0;i<d;i++){
double myd1= (char)(ch[i] - '0');
System.out.println(myd1);
double myd2= (char)(ch1[i] - '0');
System.out.println(myd2);
   result = result+(myd1+myd2);  
 System.out.println(result); 
 }

}
}

 public class StrngCalc extends sAdd {

/**
 * @param args the command line arguments
 */
public static void main(String[] args) {
    sAdd f = new sAdd();
    f.input();
    f.calc();
}

}

3 个答案:

答案 0 :(得分:0)

您可以使用函数Integer.parseInt(String)将函数字符串参数解析为带符号的十进制整数。:

void calc() {
    System.out.println(Integer.parseInt(line1) + Integer.parseInt(line2));
}

注意:如果其中一个字符串无法转换为整数,则会抛出异常。您可以使用try-catch块来处理此异常:

try {
    // operations
} catch (NumberFormatException e) {
    e.printStackTrace();
}

答案 1 :(得分:0)

当您使用加号添加字符串时,它会将它们添加到一起以获取另一个字符串。所以&#34; 123&#34; +&#34; 456&#34; =&#34; 123456&#34;

您要求获取数值,因此您必须将每个字符串转换为整数,然后将它们一起添加以获得另一个整数

try {   
    int sum = Integer.parseInt(string1) + Integer.parseInt(string2)
catch (NumberFormatException e) {
    System.out.println(e);
}

您必须将该语句包含在try-catch块中,因为尝试转换类似&#34; regulartext&#34;进入整数会引发异常。

获得总和之后,您总是可以通过

将其转换回字符串
String theSum = Integer.toString(int);

答案 2 :(得分:0)

使用Integer.parseInt

您的代码应如下所示:

int val1 = Integer.parseInt(str1);
int val2 = Integer.parseInt(str2);

Integer res = val1 + val2;
String resStr = res.toString();