Class ToBase
java.lang.Object
com.singularsys.jep.functions.PostfixMathCommand
com.singularsys.jep.functions.NaryFunction
com.singularsys.jep.misc.functions.ToBase
- All Implemented Interfaces:
PostfixMathCommandI,Serializable
Convert a number to a string in a given base.
The base to used is specified in the constructor
A prefix can be specified in the constructor. If set this will be appended to the number (after minus sign for negative values). For example with the following setup
jep.addFunction("toBase",new ToBase());
jep.addFunction("toDec",new ToBase(10));
jep.addFunction("toHex",new ToBase(16,"0x"));
toBase(val,12)converts to base 12 numbers.toBase(val,16,3)converts to base 12 with 3 hex digits after decimal place.toDec(val)converts to base 10.toDec(val,3)converts to base 10 with 3 digits after decimal place.toHex(val)converts to base 16.toHex(val,3)converts to base 16 with 3 hex digits after decimal place.
A prefix can be specified in the constructor. If set this will be appended to the number (after minus sign for negative values).
- Author:
- Rich Morris Created on 02-May-2005
- See Also:
-
Field Summary
Fields inherited from class com.singularsys.jep.functions.PostfixMathCommand
curNumberOfParameters, name, NaN, numberOfParameters -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleancheckNumberOfParameters(int n) Checks the number of parameters of the function.Evaluate the functiontoBase(double val, int base, int digits) Converts a number to a give base.toBase(long num, int base) Converts a number to a give base.Methods inherited from class com.singularsys.jep.functions.NaryFunction
runMethods inherited from class com.singularsys.jep.functions.PostfixMathCommand
asArray, asBool, asDouble, asInt, asLong, asStrictInt, asString, getName, getNumberOfParameters, setCurNumberOfParameters, setName, toString, toString
-
Constructor Details
-
ToBase
public ToBase()Constructor where base is specified as a function argument. -
ToBase
public ToBase(int base) Constructor with specified base.- Parameters:
base- the base to use- Throws:
IllegalArgumentException- if base is < 2 or > 36
-
ToBase
Constructor with specified base and a given prefix. For example 0x to proceed hexadecimal numbers.- Parameters:
base- the base to useprefix- the string to prefix numbers with.- Throws:
IllegalArgumentException- if base is < 2 or > 36
-
-
Method Details
-
checkNumberOfParameters
public boolean checkNumberOfParameters(int n) Description copied from class:PostfixMathCommandChecks the number of parameters of the function. Functions which set numberOfParameter=-1 should overload this method- Specified by:
checkNumberOfParametersin interfacePostfixMathCommandI- Overrides:
checkNumberOfParametersin classPostfixMathCommand- Parameters:
n- number of parameters function will be called with.- Returns:
- false if an illegal number of parameters is supplied, true otherwise.
-
eval
Description copied from class:NaryFunctionEvaluate the function- Specified by:
evalin classNaryFunction- Parameters:
args- arguments to the function- Returns:
- value returned by the function
- Throws:
EvaluationException- if the calculation cannot be performed
-
toBase
Converts a number to a give base.- Parameters:
num- number to convertbase- base to use- Returns:
- String representation
- Throws:
IllegalArgumentException- if base is < 2 or > 36
-
toBase
Converts a number to a give base.- Parameters:
val- number to convertbase- base to usedigits- number of digits after decimal place- Returns:
- String representation
- Throws:
IllegalArgumentException- if base is < 2 or > 36
-