public class Complex extends java.lang.Object implements FreeRefFunction
Syntax:
COMPLEX (real_num,i_num,suffix )
Converts real and imaginary coefficients into a complex number of the form x + yi or x + yj.
All complex number functions accept "i" and "j" for suffix, but neither "I" nor "J". Using uppercase results in the #VALUE! error value. All functions that accept two or more complex numbers require that all suffixes match.
real_num The real coefficient of the complex number. If this argument is nonnumeric, this function returns the #VALUE! error value.
i_num The imaginary coefficient of the complex number. If this argument is nonnumeric, this function returns the #VALUE! error value.
suffix The suffix for the imaginary component of the complex number.
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DEFAULT_SUFFIX |
static FreeRefFunction |
instance |
static java.lang.String |
SUPPORTED_SUFFIX |
Constructor and Description |
---|
Complex() |
Modifier and Type | Method and Description |
---|---|
ValueEval |
evaluate(int srcRowIndex,
int srcColumnIndex,
ValueEval real_num,
ValueEval i_num)
|
ValueEval |
evaluate(int srcRowIndex,
int srcColumnIndex,
ValueEval real_num,
ValueEval i_num,
ValueEval suffix)
|
ValueEval |
evaluate(ValueEval[] args,
int srcRowIndex,
int srcColumnIndex) |
ValueEval |
evaluate(ValueEval[] args,
OperationEvaluationContext ec) |
public static final FreeRefFunction instance
public static final java.lang.String DEFAULT_SUFFIX
public static final java.lang.String SUPPORTED_SUFFIX
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval real_num, ValueEval i_num)
Function2Arg
evaluate
in interface Function2Arg
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval real_num, ValueEval i_num, ValueEval suffix)
Function3Arg
evaluate
in interface Function3Arg
public ValueEval evaluate(ValueEval[] args, OperationEvaluationContext ec)
evaluate
in interface FreeRefFunction
args
- the pre-evaluated arguments for this function. args is never null
,
nor are any of its elements.ec
- primarily used to identify the source cell containing the formula being evaluated.
may also be used to dynamically create reference evals.null
. Possibly an instance of ErrorEval in the case of
a specified Excel error (Exceptions are never thrown to represent Excel errors).public final ValueEval evaluate(ValueEval[] args, int srcRowIndex, int srcColumnIndex)
evaluate
in interface Function
args
- the evaluated function arguments. Empty values are represented with
BlankEval
or MissingArgEval
, never null
.srcRowIndex
- row index of the cell containing the formula under evaluationsrcColumnIndex
- column index of the cell containing the formula under evaluationErrorEval
, never null
.
Note - Excel uses the error code #NUM! instead of IEEE NaN, so when
numeric functions evaluate to Double.NaN
be sure to translate the result to ErrorEval.NUM_ERROR
.Copyright 2020 The Apache Software Foundation or its licensors, as applicable.