为什么我的代码不会运行? Java程序添加数字

时间:2014-05-08 13:28:25

标签: java methods logic add

你能帮我找到我的错误吗? 我试图在这里使用这两种方法,但我的输出无效。

class Nine {
    public static void Nine(String[] args) {
        int x,y,z;
        y = 3;
        x = 7;
        z = addEm(a, b);
        System.out.println("answer= " +x);
    }
    public static addEm (double a, double b){
        int c;
        c = a+b;
    }
}

4 个答案:

答案 0 :(得分:2)

实际上你的代码中有很多错误:

        z=addEm(a, b);

这里a和b没有意义,你应该使用z=addEm(y,x);(如果你的目的是将七和七加在一起)

        System.out.println("answer= " +x);

我想你想要显示总和的结果,因此你应该打印z(而不是x),所以你应该用System.out.println("answer= " +z);替换

    public static addEm (double a, double b) {

这里你错过了返回类型,你还需要考虑参数a和b的类型。因为y,x和z是int,所以如果a和b也是int则更好,因此也将返回类型指定为int:         public static int addEm(int a,int b){

或者你可以将所有东西(y,x,z,a,b和返回类型)声明为double:重要的是它们应该是所有相同的类型。此外,您还会错过函数addEm的return语句,汇总成为:

public static int addEm (int a, int b)
{
    int c;
    c=a+b;
    return c;
}

最后还有功能

public static void Nine(String[] args)

它没有以入口点命名:它的名称应该是主要的。

总而言之,如果您应用所有修复(通过尽可能少地修改原始代码),编译,运行和遵循某些“逻辑”的代码是:

class Nine {

    public static void main(String[] args) {
        int x, y, z;
        y = 3;
        x = 7;
        z = addEm(y, x);
        System.out.println("answer= " + z);
    }

    public static int addEm(int a, int b) {
        int c;
        c = a + b;
        return (c);
    }
}

答案 1 :(得分:0)

男,这是一个非常基础的java课程:

每个prog都需要一个入口点,在java中:

public static void main(String args[]){}

然后你的代码就会执行。

答案 2 :(得分:-1)

您将参数a和b传递给addEm,但这些变量未初始化。我希望你想要传递x和y。

class Nine 
{
  public static void Nine(String[] args) 
  {
    int x,y,z;
    y=3;
    x=7;
    z=addEm(x, y);
    System.out.println("answer= " +x);
  }
  public static addEm (double a, double b)
  {
    int c;
    c=a+b;
  }
}

答案 3 :(得分:-1)

您的代码无效,因为您的addEm方法没有任何返回类型。另外,你编写的方法采用双参数,但在使用时你试图将int传递给它。你也没有任何主要方法。我假设你拼写错误或误解了主要方法,所以下面是应该工作的代码

class Nine 
{
  public static void Main(String[] args) 
  {
    int x,y,z;
    y=3;
    x=7;
    z=addEm(x, y);
    System.out.println("answer= "  + x);
  }
  public static int addEm (int a, int b)
  {
    int c;
    c=a+b;
    return c;
  }
}