实例方法:复数

Instance Methods: complex numbers

我目前正在为 java(不是 class 的一部分)做单独的教科书工作,但我遇到了一个问题。

为这个 class 写一个实例方法模数,可以通过这样的语句调用 双倍大小 = z.modulus();其中 z 是 Complex 类型。如果 z 表示值 a + ib, 然后调用会将变量大小设置为 |z| 的值= 平方根(a2 + b2)。

我做错了什么?

public class complex {  
    double re;
    double im;
    complex x;

    public static void main(String[] args) {

    public complex z = new complex();
    {
        z.im = In.getDouble();
        z.re = In.getDouble();      
    }
    //public complex modulus = (x);
    //{
    //  x.im = z.im * z.im;
    //  x.re = z.re * z.re;
    //  return ;
    //}

    public double size() {
        System.out.println(Math.sqrt(x.im+ x.re));
        return Math.sqrt(x.im+ x.re);       
    }

    double size = z.modulus();
    //  {
    //}

    private double modulus() {
        // TODO Auto-generated method stub
        x.im = z.im * z.im;
        x.re = z.re * z.re;
        return 0;
    }
}

我进行了更改并得出了这个结果,但它仍然不起作用我将错误放在它们出现的行旁边。

public class complex {
double re;
double im;

public complex z = new complex();
{
    z.im = In.getDouble();
    z.re = In.getDouble();}
public static void main(String[] args) {



private double modulus() {    // insert enumIdentifier and body, Syntax error on "double" @ expected.

    return Math.sqrt( im * im + re * re );
}

double size = z.modulus();


}

}

您不需要参考 xz。您的 class 中有正确的字段可以计算模数。

public double modulus() {
    return Math.sqrt( im * im + re * re );
}

但是,在您问题的代码中,您似乎在 main 方法中定义了 class 的方法。你不能那样做。在开始下一个方法之前关闭一个方法的定义(})。