public abstract class PFArithmeticOperator extends PFBinaryOperator implements PFNumberResultOperation
演算処理手順は以下のとおり。
PFNumberResultOperation
のオブジェクトの場合、その演算結果をオペランドとする。
演算結果は、(左オペランド)(演算子)(右オペランド) の値となる。
ただし、以下の場合は演算不可能とし、演算結果はnullとなる。
演算結果の型は以下のとおり。複数にあてはまる場合は、優先順位の高いものが適用される。
演算結果の小数点以下桁数を指定することができる。
ただし、演算結果の型がBigDecimal, Double, Floatの場合のみ有効とする。
コンストラクタと説明 |
---|
PFArithmeticOperator()
算術演算コンポーネントを生成する。
|
修飾子とタイプ | メソッドと説明 |
---|---|
void |
evaluate()
演算を行なう。
|
void |
evaluateNumber(java.lang.String string1,
java.lang.String string2)
指定された文字列を数値(BigDecimal)に変換して、演算を行なう。
|
protected java.lang.Object[] |
getConvertedOperand()
型変換後の左オペランドと右オペランドを格納した配列を返す。
|
int |
getDecimalPlace()
演算結果の小数点以下桁数を返す。
|
protected java.lang.Number |
getRoundedOffNumber(java.lang.Number number)
小数点以下桁数を考慮した値を返す。
|
void |
setDecimalPlace(int decimalPlace)
演算結果の小数点以下桁数を設定する。
|
void |
setLeftNumberOperand(java.lang.String string)
指定された文字列を数値(BigDecimal)に変換して、左オペランドに設定する。
|
void |
setNumberOperand(java.lang.String string1,
java.lang.String string2)
指定された文字列を数値(BigDecimal)に変換して、両オペランドに設定する。
|
void |
setRightNumberOperand(java.lang.String string)
指定された文字列を数値(BigDecimal)に変換して、右オペランドに設定する。
|
evaluate, getLeftOperand, getOperand, getRightOperand, setLeftOperand, setOperand, setRightOperand
addPFProcessTerminateListener, firePFProcessTerminated, getComponentID, getComponentKey, getComponentKeys, getComponentPublicName, getComponentString, getPFProcessTerminateListenerList, isAllowPullTransfer, isAllowPushTransfer, isAllowRemoteInvocation, localeUpdated, removePFProcessTerminateListener, setAllowPullTransfer, setAllowPushTransfer, setAllowRemoteInvocation, setComponentID, setComponentKey, setComponentKeys, setComponentPublicName
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getNumberResult
getComponentName
public int getDecimalPlace()
setDecimalPlace(int)
public void setDecimalPlace(int decimalPlace)
decimalPlace
- 小数点以下桁数getDecimalPlace()
public void setLeftNumberOperand(java.lang.String string)
string
- 数値(左オペランド)PFBinaryOperator.setLeftOperand(Object)
public void setRightNumberOperand(java.lang.String string)
string
- 数値(右オペランド)PFBinaryOperator.setLeftOperand(Object)
public void setNumberOperand(java.lang.String string1, java.lang.String string2)
string1
- 数値(左オペランド)string2
- 数値(右オペランド)setLeftNumberOperand(String)
,
setRightNumberOperand(String)
public void evaluate() throws PFMethodException, PFRuntimeException
evaluate
クラス内 PFOperator
PFMethodException
- イベント伝播先のメソッド起動時のエラーPFRuntimeException
- 予期しない実行時エラーpublic void evaluateNumber(java.lang.String string1, java.lang.String string2) throws PFMethodException, PFRuntimeException
string1
- 数値(左オペランド)string2
- 数値(右オペランド)PFMethodException
- イベント伝播先のメソッド起動時のエラーPFRuntimeException
- 予期しない実行時エラーsetNumberOperand(String, String)
,
evaluate()
protected final java.lang.Number getRoundedOffNumber(java.lang.Number number)
number
- 値protected java.lang.Object[] getConvertedOperand()