Java试图通过从用户获取输入并通过main方法调用函数来添加两个数字

Java试图通过从用户获取输入并通过main方法调用函数来添加两个数字,java,Java,我已经创建了这个代码。当我尝试运行它时,它不起作用。它没有返回答案。有人能帮我吗?? 我试图通过从用户处获取输入来对数字进行算术运算: import java.util.Scanner; public class Earth { int a,b,c; Scanner d=new Scanner(System.in); public void entry() { System.out.println("Enter a"); a=d

我已经创建了这个代码。当我尝试运行它时,它不起作用。它没有返回答案。有人能帮我吗?? 我试图通过从用户处获取输入来对数字进行算术运算:

import java.util.Scanner;


public class Earth {
    int a,b,c;
    Scanner d=new Scanner(System.in);
    public void entry()
    {
        System.out.println("Enter a");
        a=d.nextInt();
        System.out.println("Enter b");
        b=d.nextInt();

    }
    public void sum(){
        c=a+b;
        System.out.println("The sum is" +c);
    }
    public void difference(){
        c=a-b;
        System.out.println("The ans is" +c);
    }
    public void div(){
        c=a/b;
        System.out.println("The ans is" +c);
    }
    public void multi(){
        c=a*b;
        System.out.println("The ans is" +c);
    }
    public static void main(String[] args) {
        Earth e=new Earth();
        Earth e1=new Earth();
        System.out.println("Enter any one sum,div,diff,mul");
        Scanner sc=new Scanner(System.in);
        String r=sc.next();
        e.entry();
        String sum=null;
        String mul = null;
        String diff = null;
        String div = null;
        if(r==sum)
        {
            e1.sum();
        }

        if(r==mul)
        {
            e1.multi();
        }
        if(r==div)
        {
            e1.div();
        }

        if(r==diff)
        {
            e1.difference();
        }
        // TODO Auto-generated method stub

    }

}

您正在使用引用“e”初始化变量a,b,并且正在使用引用“e1”调用sum,还有一个错误,应该是这样的

    if(r.equals("sum"))
    {
        e1.sum();
    } 

当你尝试这个时会发生什么?你预计会发生什么?你是怎么尝试的?是否有错误消息?那些
if
语句看起来不太好。将
字符串
进行比较
取而代之的是equal,并确保使用与
null
不同的东西初始化比较值。您的
mul,sum,diff
null
我认为它一定是
mul=“mul”;sum=“sum”
。然后
command=in.nextLine();if(command.equals(sum){…})