这个程序通过合并n1和n2给出输出,但我希望两者都是算术上添加的
String answer = "";
if (a1.equals("+")){
answer = (n1 + n2);
}
else if (a1.equals("-")){
answer = n1 + n2;
}
答案 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
查看这篇文章: