com.singularsys.jep.functions
Class Round
java.lang.Object
com.singularsys.jep.functions.PostfixMathCommand
com.singularsys.jep.functions.Round
- All Implemented Interfaces:
- PostfixMathCommandI, java.io.Serializable
- Direct Known Subclasses:
- RInt
public class Round
- extends PostfixMathCommand
A PostfixMathCommandI which rounds a number.
round(a) adds 0.5 to the argument and returns the closest integer.
round(a,3) rounds the argument to 3 decimal places.
Note: This class was changed in version 3.4. Prior to 3.4, this class
used the Math.rint method. In 3.4 and future releases Math.round will be
used instead. The effect is changing the rounding behaviour when the input
is equally close to two integers, Math.round rounds 1.5 down and Math.rint round it up.
- Author:
- Richard Morris
- See Also:
RInt
,
Serialized Form
Constructor Summary |
Round()
|
Method Summary |
boolean |
checkNumberOfParameters(int n)
Must have one or more parameter |
protected double |
round(double param)
The rounding method which implements the core rounding operation used
in this class. |
java.lang.Object |
round(java.lang.Object param)
|
void |
run(java.util.Stack<java.lang.Object> inStack)
Run the function on the stack. |
Methods inherited from class com.singularsys.jep.functions.PostfixMathCommand |
asArray, asBool, asDouble, asInt, asLong, asStrictInt, asString, checkStack, getName, getNumberOfParameters, setCurNumberOfParameters, setName, toString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Round
public Round()
checkNumberOfParameters
public boolean checkNumberOfParameters(int n)
- Must have one or more parameter
- Specified by:
checkNumberOfParameters
in interface PostfixMathCommandI
- Overrides:
checkNumberOfParameters
in class PostfixMathCommand
- Parameters:
n
- number of parameters function will be called with.
- Returns:
- false if an illegal number of parameters is supplied, true otherwise.
run
public void run(java.util.Stack<java.lang.Object> inStack)
throws EvaluationException
- Description copied from interface:
PostfixMathCommandI
- Run the function on the stack. Pops the arguments from the stack, and
pushes the result on the top of the stack.
- Throws:
EvaluationException
round
public java.lang.Object round(java.lang.Object param)
throws EvaluationException
- Throws:
EvaluationException
round
protected double round(double param)
- The rounding method which implements the core rounding operation used
in this class. Other subclasses (such as RInt) can override this to
perform custom rounding.
- Parameters:
param
-
- Returns:
- the rounded value
- Since:
- 3.4.0
Copyright © 2010 Singular Systems http://www.singularsys.com/jep