Package net.algart.math.functions
Class SelectConstantFunc
java.lang.Object
net.algart.math.functions.SelectConstantFunc
- All Implemented Interfaces:
Func
Selecting constant function:
f(x0, x1, ..., xn-1)
= values[(int)x0],
where values is the given array of constants.
The get(double...)
method of the instance of this class requires at least n arguments
and throws IndexOutOfBoundsException if the number of arguments is less
or if the argument, cast to int type, is negative or >=values.length.
This class is immutable and thread-safe: there are no ways to modify settings of the created instance.
- Author:
- Daniel Alievsky
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.algart.math.functions.Func
Func.Updatable
-
Field Summary
Fields inherited from interface net.algart.math.functions.Func
ABS, ABS_DIFF, HALF_X_MINUS_Y, HALF_X_PLUS_Y, HALF_Y_MINUS_X, IDENTITY, MAX, MIN, POSITIVE_DIFF, REVERSE, SELECT, SELECT_FROM_8_DIRECTIONS_2D, SELECT_IF_GREATER, SELECT_IF_GREATER_OR_EQUAL, SHIFTS_ALONG_8_DIRECTIONS_2D, UPDATABLE_IDENTITY, X_MINUS_Y, X_PLUS_Y, Y_MINUS_X
-
Method Summary
Modifier and TypeMethodDescriptiondouble
get()
Equivalent toget
(new double[0]).double
get
(double x0) Equivalent toget
(new double[] {x0}).double
get
(double... x) Returns the result of this function for the given arguments: f(x0, x1, ..., xx.length-1).double
get
(double x0, double x1) Equivalent toget
(new double[] {x0, x1}).double
get
(double x0, double x1, double x2) Equivalent toget
(new double[] {x0, x1, x2}).double
get
(double x0, double x1, double x2, double x3) Equivalent toget
(new double[] {x0, x1, x2, x3}).static SelectConstantFunc
getInstance
(double... values) Returns an instance of this class, describing the selecting function with the specified array of constants.toString()
Returns a brief string description of this object.double[]
values()
Returns all values returned by this function.
-
Method Details
-
getInstance
Returns an instance of this class, describing the selecting function with the specified array of constants.The passed reference values is not maintained by the created instance: if necessary, the Java array is cloned.
- Parameters:
values
- the values, one of which is returned byget(double...)
method..- Returns:
- the selection function for the given array of constants.
-
values
public double[] values()Returns all values returned by this function.The returned array is not a reference to an internal array stored in this object: the internal Java array is cloned.
- Returns:
- all values returned by this function.
-
get
public double get(double... x) Description copied from interface:Func
Returns the result of this function for the given arguments: f(x0, x1, ..., xx.length-1).This method must not change the values of x elements!
-
get
public double get()Description copied from interface:Func
Equivalent toget
(new double[0]). Provides better performance because it does not require Java array creation. -
get
public double get(double x0) Description copied from interface:Func
Equivalent toget
(new double[] {x0}). Provides better performance because it does not require Java array creation. -
get
public double get(double x0, double x1) Description copied from interface:Func
Equivalent toget
(new double[] {x0, x1}). Provides better performance because it does not require Java array creation. -
get
public double get(double x0, double x1, double x2) Description copied from interface:Func
Equivalent toget
(new double[] {x0, x1, x2}). Provides better performance because it does not require Java array creation. -
get
public double get(double x0, double x1, double x2, double x3) Description copied from interface:Func
Equivalent toget
(new double[] {x0, x1, x2, x3}). Provides better performance because it does not require Java array creation. -
toString
Returns a brief string description of this object.
-