Class Complex

Object
Complex
All Implemented Interfaces:
Serializable, Cloneable, Cloneable

public final class Complex extends Object implements Cloneable, Serializable
A simple class for the handling of complex numbers. This is not the purpose of this class to provides a full-fledged library for complex number handling. This class exists mostly for the limited needs of some transformation methods.

For performance reasons, the methods in this class never create new objects. They always operate on an object specified in argument, and store the result in the object on which the method was invoked.

This class is final for performance reason.

Since:
2.2
Author:
Justin Deoliveira, Martin Desruisseaux
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    double
    The imaginary part of the complex number.
    double
    The real part of the complex number.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a complex number initialized to (0,0).
    Complex(double real, double imag)
    Creates a complex number initialized to the specified real and imaginary parts.
    Creates a complex number initialized to the same value than the specified one.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    add(Complex c1, Complex c2)
    Adds to complex numbers.
    void
    Multplies two complex numbers, and add the result to a third one.
    Returns a copy of this complex number.
    void
    Set this complex number to the same value than the specified one.
    void
    Divides one complex number by another.
    boolean
    Compares this complex with the specified object for equality.
    boolean
    Returns true if this complex number has the same value than the specified one.
    int
    Returns a hash value for this complex number.
    void
    multiply(Complex c, double s)
    Multiplies a complex number by a scalar.
    void
    Multplies two complex numbers.
    void
    power(Complex c, int power)
    Computes the integer power of a complex number up to 6.
    Returns a string representation of this complex number.

    Methods inherited from class Object

    finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • real

      public double real
      The real part of the complex number.
    • imag

      public double imag
      The imaginary part of the complex number.
  • Constructor Details

    • Complex

      public Complex()
      Creates a complex number initialized to (0,0).
    • Complex

      public Complex(Complex c)
      Creates a complex number initialized to the same value than the specified one.
    • Complex

      public Complex(double real, double imag)
      Creates a complex number initialized to the specified real and imaginary parts.
  • Method Details

    • copy

      public void copy(Complex c)
      Set this complex number to the same value than the specified one. This method computes the following:
       this = c
       
    • multiply

      public void multiply(Complex c, double s)
      Multiplies a complex number by a scalar. This method computes the following:
       this = c * s
       
    • multiply

      public void multiply(Complex c1, Complex c2)
      Multplies two complex numbers. This method computes the following:
       this = c1 * c2
       
    • divide

      public void divide(Complex c1, Complex c2)
      Divides one complex number by another. This method computes the following:
       this = c1 / c2
       
    • add

      public void add(Complex c1, Complex c2)
      Adds to complex numbers. This method computes the following:
       this = c1 + c2
       
    • addMultiply

      public void addMultiply(Complex c0, Complex c1, Complex c2)
      Multplies two complex numbers, and add the result to a third one. This method computes the following:
       this = c0 + (c1 * c2)
       
    • power

      public void power(Complex c, int power)
      Computes the integer power of a complex number up to 6. This method computes the following:
       this = c ^ power
       
    • clone

      public Complex clone()
      Returns a copy of this complex number.
      Specified by:
      clone in interface Cloneable
      Overrides:
      clone in class Object
      Returns:
      A copy of this object.
      See Also:
    • equals

      public boolean equals(Complex c)
      Returns true if this complex number has the same value than the specified one.
    • equals

      public boolean equals(Object c)
      Compares this complex with the specified object for equality.
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Returns a hash value for this complex number.
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Returns a string representation of this complex number.
      Overrides:
      toString in class Object