⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 complex.java

📁 这个是学习网络编程的好好文档! 里面有一些老师发给的学习jsp的课件!
💻 JAVA
字号:
/**
 * <p> 类:Complex 自定义复数类 </p>
 * @author 肖磊
 * @version 1.0
 */
public class Complex   
{
  // 以下为域成员定义------------------------------------------------
  private double real; // 实部
  private double imag; // 虚部
  
  // 以下是构造方法--------------------------------------------------
  public Complex()     
  {
    real = 0.0;
    imag = 0.0;
  }
  public Complex(double r,double i)
  {
    real = r;
    imag = i;
  }
  
  // 以下为设置和读取域的方法----------------------------------------
  public void setReal(double r) { real = r; }
  public double getReal() { return real; }
  public void setImag(double i) { imag = i; }
  public double getImag() { return imag; }
  
  // 以下是实现四则运算的方法----------------------------------------
  public Complex add(Complex c)   // 加法
  {
    Complex temp = new Complex();
    temp.real = real + c.real;
    temp.imag = imag + c.imag;
    return temp;
  }
  public Complex sub(Complex c)   // 减法
  {
    Complex temp = new Complex();
    temp.real = real - c.real;
    temp.imag = imag - c.imag;
    return temp;
  }
  public Complex mul(Complex c)   // 乘法
  {
    Complex temp = new Complex();
    temp.real = real*c.real - imag*c.imag;
    temp.imag = real*c.imag + imag*c.real;
    return temp;    
  }
  public Complex div(Complex c)   // 除法
  {
    double d = c.real*c.real + c.imag*c.imag;
    Complex temp = new Complex();
    temp.real = (real*c.real + imag*c.imag)/d;
    temp.imag = (imag*c.real - real*c.imag)/d;
    return temp;
  }
  
  // 以下为转换为字符串方法------------------------------------------
  public String toString()
  {
    if(imag>=0) 
      return real+"+i"+imag;
    else
      return real+"-i"+(-1*imag);
  }
  
  // 以下是用static方法实现四则运算(可选)----------------------------
  public static Complex add(Complex c1,Complex c2)
  {
    return(new Complex(c1.real+c2.real,c1.imag+c2.imag));
  }
  public static Complex sub(Complex c1,Complex c2)
  {
    return(new Complex(c1.real-c2.real,c1.imag-c2.imag));
  }
  public static Complex mul(Complex c1,Complex c2)
  {
    double r = c1.real*c2.real - c1.imag*c2.imag;
    double i = c1.real*c2.imag + c1.imag*c2.real;
    return(new Complex(r,i));
  }
  public static Complex div(Complex c1,Complex c2)
  {
    double d = c2.real*c2.real + c2.imag*c2.imag;
    double r = c1.real*c2.real + c1.imag*c2.imag;
    double i = c1.imag*c2.real - c1.real*c2.imag;
    return(new Complex(r/d,i/d));
  }
  
}

// 用于测试Complex类的类---------------------------------------------
class ComplexTester  
{
  public static void main(String args[])
  {
    // 创建两个 Complex 对象-----------------------------------------
    System.out.println("创建两个 Complex 对象------------------------");
    Complex c1 = new Complex(4,5);
    Complex c2 = new Complex(3,-2);
    System.out.println("c1="+c1);
    System.out.println("c2="+c2);
    // 以下测试非静态方法的四则运算----------------------------------
    System.out.println("以下测试非静态方法的四则运算-----------------");
    System.out.println("c1+c2="+c1.add(c2));
    System.out.println("c1-c2="+c1.sub(c2));
    System.out.println("c1*c2="+c1.mul(c2));
    System.out.println("c1/c2="+c1.div(c2));
    // 以下测试静态方法的四则运算------------------------------------
    System.out.println("以下测试静态方法的四则运算-------------------");
    System.out.println("c1+c2="+Complex.add(c1,c2));
    System.out.println("c1-c2="+Complex.sub(c1,c2));
    System.out.println("c1*c2="+Complex.mul(c1,c2));
    System.out.println("c1/c2="+Complex.div(c1,c2));
    System.out.println("测试结束-------------------------------------");
  }
}
// 程序结束 ---------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -