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
-
Method Summary
Modifier and TypeMethodDescriptionboolean
checkNumberOfParameters
(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
run
Methods 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:PostfixMathCommand
Checks the number of parameters of the function. Functions which set numberOfParameter=-1 should overload this method- Specified by:
checkNumberOfParameters
in interfacePostfixMathCommandI
- Overrides:
checkNumberOfParameters
in 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:NaryFunction
Evaluate the function- Specified by:
eval
in 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
-