算术运算+只是结合了两个变量

时间:2016-03-19 15:58:34

标签: java

这个程序通过合并n1和n2给出输出,但我希望两者都是算术上添加的

String answer = "";

    if (a1.equals("+")){
        answer = (n1 + n2);
    }
    else if (a1.equals("-")){
        answer = n1 + n2;
    }

3 个答案:

答案 0 :(得分:2)

字符串添加(表示+当一个或多个边是字符串时),将始终尝试连接输入而不是添加它们。要进行算术加法,两个输入都必须是Number类型,这意味着int,double,float,char。

使用int number1 = Integer.parseInt(n1)int number2 = Integer.parseInt(n2),然后在int上使用+运算符,而不是字符串。

答案 1 :(得分:0)

这里有两件事情之一 - n1和n2都是字符串,在这种情况下你需要在它们周围使用Integer.parseInt()。

或者因为你将它们添加到已经是String的东西中,因为你已经设置了上面的空字符串,它们在被添加之前被强制转换为字符串。在这种情况下,您可以首先在初始变量中初始化或执行计算。

答案 2 :(得分:0)

首先执行以下操作以初始化为数字

var answer = 0;
var n1 = 0;
var n2 = 0;

OR

将parseInt用于数字变量n1和n2

查看这篇文章:

How to add two numbers?