我做了一个有3个功能的基本计算器。我使用扫描仪实用程序来帮助我与计算器进行交互。输入第一个数字,然后将其保存到变量,输入第二个数字,并保存到变量中。之后,它会询问您要对数字做什么。您可以选择Multiply,Add,Subtract。但它们似乎都没有工作,我不知道为什么,但我猜测在问题之后插入的字符串没有保存或者使用错误的方法。
import java.util.Scanner;
public class MainClass {
private static final String Multiply = null;
private static final String Add = null;
private static final String Subtract = null;
public static void main(String[] args)
{
MainClass mainObject=new MainClass();
mainObject.Calculator();
}
public void Calculator()
{
double firstnumber;
double secondnumber;
double result;
String word1="Multiply";
String word2="Add";
String word3="Subtract";
Scanner scan=new Scanner(System.in);
System.out.println("Enter first number");
firstnumber=scan.nextInt();
System.out.println("Enter second number");
secondnumber=scan.nextInt();
System.out.println("What do you want to do?");
String operator=scan.next();
if(operator==word1)
{
result=firstnumber*secondnumber;
System.out.println(result);
}
else if(operator==word2)
{
result=firstnumber+secondnumber;
System.out.println(result);
}
else if(operator==word3)
{
result=firstnumber-secondnumber;
System.out.println(result);
}
}
}
答案 0 :(得分:1)
字符串之间的比较操作不是==
,而是equals()
方法:
if(operator.equals("add"))
...
else if (operator.equals("subtract"))
...
else if (operator.equals("multiply"))
...
else
wrong input