| Constructor and Description |
|---|
AbstractCalculator() |
AbstractCalculator(Num value) |
AbstractCalculator(java.lang.Object value)
Constructor
|
AbstractCalculator(java.lang.String value) |
AbstractCalculator(java.lang.String value,
char decimalSeparator) |
| Modifier and Type | Method and Description |
|---|---|
CALC |
append(AbstractCalculator expression)
Copy calculator expression into this expression within brackets
|
CALC |
append(AbstractCalculator expression,
boolean withinBrackets)
Copy expression from given calculator into this expression within or without brackets
|
CALC |
append(java.lang.Class<? extends Function> function,
java.lang.Object... values)
Append function with value to expression.
|
CALC |
append(java.lang.Class<? extends Operator> operator)
Append operator to expression
|
CALC |
append(java.lang.Class<? extends Operator> operator,
Num value)
Append operator and number to expression
|
CALC |
append(java.lang.Class<? extends Operator> operator,
java.lang.Object value)
Append operator and number to expression
|
CALC |
append(java.lang.Class<? extends Operator> operator,
java.lang.String value,
char decimalSeparator)
Append operator and parsed String value with custom decimal separator used in String representation of value
|
CALC |
append(CList infix,
boolean withinBrackets)
Copy infix expression into this expression within or without brackets
|
<T extends AbstractCalculator> |
bind(java.lang.Class<T> clazz)
Bind another Calculator class functionalities to expression.
|
Num |
calc()
Calculate prepared expression
|
<T> T |
calc(java.lang.Class<T> toClass)
Calculate prepared expression and convert to object of given class
|
Num |
calculate()
Calculate prepared expression
|
Num |
calcWithSteps(boolean showDetails)
Calculate expression and track calculation steps accessible with
getCalculationSteps() |
CALC |
cb()
Close bracket
|
CALC |
closeBracket()
Close bracket
|
CALC |
expression(java.lang.String expression)
Parse and append given expression to existing expression
|
CALC |
expression(java.lang.String expression,
java.lang.Object... values)
Parse and append given expression to existing expression
String representation of expression that will be parsed with unknown variables.
|
java.util.LinkedList<java.lang.String> |
getCalculationSteps()
Get calculation steps if calculation is initiated with
calcWithSteps(boolean) |
char |
getDecimalSeparator()
Get decimal separator used throughout expression
|
char |
getGroupingSeparator()
Get grouping separator used throughout expression
|
java.lang.String |
getInfix()
Get infix (common arithmetic and logical expression notation) representation of given expression
|
java.lang.String |
getPostfix()
Convert defined expression to postfix String
|
Properties |
getProperties()
Get defined properties
|
OperationRegister |
getRegisteredOperations()
List registered local scoped operations.
|
Num |
getResult()
Return copy of calculated result
|
Rounding |
getRoundingMode()
Get rounding mode used throughout expression
|
java.lang.Integer |
getScale()
Get scale mode used throughout expression
|
protected abstract CALC |
getThis()
Return reference of subclass
|
boolean |
hasCalculationSteps()
Check if calculation steps are remembered during calculation.
|
boolean |
hasResult()
Check whether the calculation is made according to a expression
|
boolean |
hasStripTrailingZeros() |
CALC |
ob()
Open bracket
|
CALC |
openBracket()
Open bracket
|
CALC |
openBracket(double value)
Open bracket and add value after.
|
CALC |
openBracket(float value)
Open bracket and add value after.
|
CALC |
openBracket(int value)
Open bracket and add value after.
|
CALC |
openBracket(long value)
Open bracket and add value after.
|
CALC |
openBracket(Num value)
Open bracket and add value after.
|
CALC |
openBracket(java.lang.Object value)
Open bracket and add value after.
|
CALC |
openBracket(short value)
Open bracket and add value after.
|
CALC |
openBracket(java.lang.String value)
Open bracket and add value after.
|
CALC |
openBracket(java.lang.String value,
char decimalSeparator)
Open bracket and add value after.
|
CALC |
register(java.lang.Class<? extends Operation> operationClass)
|
CALC |
setDecimalSeparator(char decimalSeparator)
Set decimal separator for entire expression
|
CALC |
setGroupingSeparator(char decimalSeparator)
Set number grouping separator for entire expression
|
CALC |
setProperties(Properties properties)
Set proeprties
|
CALC |
setRoundingMode(Rounding roundingMode)
Set rounding mode for entire expression
|
CALC |
setScale(java.lang.Integer scale)
Set scale for entire expression
|
CALC |
setStripTrailingZeros(boolean stripTrailingZeros) |
java.lang.String |
toString() |
CALC |
val(double value)
Append value to expression
|
CALC |
val(float value)
Append value to expression
|
CALC |
val(int value)
Append value to expression
|
CALC |
val(long value)
Append value to expression
|
CALC |
val(Num value)
Append value to expression
|
CALC |
val(java.lang.Object value)
Append value to expression
|
CALC |
val(java.lang.Object value,
java.lang.Class<? extends NumConverter> converter)
Append value to expression
|
CALC |
val(short value)
Append value to expression
|
CALC |
val(java.lang.String value)
Append String value to expression that will be parsed to
Num |
CALC |
val(java.lang.String value,
char decimalSeparator)
Append String value to expression that will be parsed to
Num with defined decimal separator |
public AbstractCalculator()
public AbstractCalculator(java.lang.Object value)
value - can be any object than Num can work withpublic AbstractCalculator(Num value)
public AbstractCalculator(java.lang.String value)
public AbstractCalculator(java.lang.String value,
char decimalSeparator)
protected abstract CALC getThis()
public CALC register(java.lang.Class<? extends Operation> operationClass)
Operator or Function inside scope of this instance, that can be used during expression parsing.
With registration of custom operation it's possible to override existing default operation implementation.
Because during calculation API first scan scoped (registered) operation and after that default operation implementation inside CacheoperationClass - public OperationRegister getRegisteredOperations()
public CALC val(short value)
value - public CALC val(int value)
value - public CALC val(long value)
value - public CALC val(float value)
value - public CALC val(double value)
value - public CALC val(java.lang.Object value)
value - public CALC val(java.lang.Object value, java.lang.Class<? extends NumConverter> converter)
value - custom type valueconverter - class for convert custom type to Numpublic CALC val(java.lang.String value)
Numvalue - public CALC val(java.lang.String value, char decimalSeparator)
Num with defined decimal separatorvalue - String representation of numberdecimalSeparator - used in string representation of numberpublic CALC append(AbstractCalculator expression)
expression - public CALC append(AbstractCalculator expression, boolean withinBrackets)
expression - withinBrackets - public CALC append(CList infix, boolean withinBrackets)
infix - withinBrackets - public CALC append(java.lang.Class<? extends Operator> operator)
operator - public CALC append(java.lang.Class<? extends Operator> operator, java.lang.Object value)
operator - value - public CALC append(java.lang.Class<? extends Operator> operator, java.lang.String value, char decimalSeparator)
operator - value - decimalSeparator - public CALC append(java.lang.Class<? extends Operator> operator, Num value)
operator - value - public CALC append(java.lang.Class<? extends Function> function, java.lang.Object... values)
function - values - can accept any object that Num can work withFunction}public CALC expression(java.lang.String expression) throws java.text.ParseException
expression - java.text.ParseExceptionpublic CALC expression(java.lang.String expression, java.lang.Object... values) throws java.text.ParseException
Num.setName(String) then name will be matched with name of unknown variable.
Otherwise unknown variable will be matched by declared order.
expression - java.text.ParseExceptionpublic CALC ob()
public CALC openBracket()
public CALC openBracket(short value)
value - public CALC openBracket(int value)
value - public CALC openBracket(long value)
value - public CALC openBracket(float value)
value - public CALC openBracket(double value)
value - public CALC openBracket(java.lang.Object value)
value - public CALC openBracket(java.lang.String value)
value - public CALC openBracket(java.lang.String value, char decimalSeparator)
value - public CALC openBracket(Num value)
value - public CALC cb()
public CALC closeBracket()
public Properties getProperties()
public CALC setProperties(Properties properties)
properties - public CALC setScale(java.lang.Integer scale)
scale - public java.lang.Integer getScale()
public CALC setRoundingMode(Rounding roundingMode)
roundingMode - public Rounding getRoundingMode()
public CALC setDecimalSeparator(char decimalSeparator)
decimalSeparator - public char getDecimalSeparator()
public CALC setGroupingSeparator(char decimalSeparator)
decimalSeparator - public char getGroupingSeparator()
public boolean hasStripTrailingZeros()
public CALC setStripTrailingZeros(boolean stripTrailingZeros)
public Num calc()
#calculate()},
#calcWithSteps(boolean)},
#getResult()}public <T> T calc(java.lang.Class<T> toClass)
#calculate()},
#calcWithSteps(boolean)},
#getResult()},
Num#toObject(Class)}public Num calculate()
#calc()},
#calcWithSteps(boolean)},
#getResult()}public Num calcWithSteps(boolean showDetails)
getCalculationSteps()public <T extends AbstractCalculator> T bind(java.lang.Class<T> clazz)
clazz - public java.lang.String getPostfix()
public java.lang.String getInfix()
getPostfix()}public boolean hasResult()
getResult()}public Num getResult()
hasResult()}public boolean hasCalculationSteps()
getCalculationSteps()}public java.util.LinkedList<java.lang.String> getCalculationSteps()
calcWithSteps(boolean){@link}public java.lang.String toString()
toString in class java.lang.ObjectJCalc API 2014 Davor Sauer - Apache 2.0