|
Velocity Tools
Generic Tools
ツールドキュメント
その他のサブプロジェクト
|
|
MathTool リファレンスドキュメント
|
| |
Velocity で浮動少数点数演算を行うツールです。
いくつかの注意点:
- ほとんどのメソッドは Double でラップされた数値を返却し、自動的に小数点まで表示されます (例: new Double(1).toString() -> '1.0')。
これは故意にそうしています。
このツールは浮動少数点数演算を目的としているからです。
整数の演算は既に Velocity テンプレート言語でサポートされています。
'1.0' ではなく '1' が必要なら、結果に対して intValue() を呼び出してください。
- NullPointer, NumberFormat, DivideByZero 例外は送出されません。
これらの例外はテンプレートのレンダリングを停止させてしまうからです。
デバッグのためのフィードバックとして、Velocity はこれを文字通りそのまま表示します。 (例: $math.div(1, 0) は '$math.div(1, 0)' として表示されます)
- 数値演算の処理には
java.lang.Math クラスが使用されます。
| Class |
| | org.apache.velocity.tools.generic.MathTool |
| Name |
| | $math (Velocityコンテキスト内での推奨名) |
| Toolbox設定例 |
| | <tool>
<key>math</key>
<scope>application</scope>
<class>org.apache.velocity.tools.generic.MathTool</class>
</tool> |
| 作者 |
| | Nathan Bubna
|
- Method Overview
-
|
|
add()
|
| |
加算
Double add(Object num1, Object num2)
|
- Parameters
-
- num1, num2
-
加算する値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
合計を表す
java.lang.Double 。
引数が不正の場合は null 。
|
|
sub()
|
| |
減算
Double sub(Object num1, Object num2)
|
- Parameters
-
- num1, num2
-
減算する値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
減算の結果を表す
java.lang.Double 。
引数が不正の場合は null 。
|
|
mul()
|
| |
乗算
Double mul(Object num1, Object num2)
|
- Parameters
-
- num1, num2
-
乗算する値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
乗算の結果を表す
java.lang.Double 。
引数が不正の場合は null 。
|
|
div()
|
| |
除算
Double div(Object num1, Object num2)
|
- Parameters
-
- num1, num2
-
除算の入力値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
除算の結果を表す
java.lang.Double 。
引数が不正の場合は null 。
|
|
pow()
|
| |
累乗
Double pow(Object num1, Object num2)
|
- Parameters
-
- num1, num2
-
演算値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
一番目の数値を二番目の数値で累乗した結果を表す
java.lang.Double 。
引数が不正の場合は null 。
|
|
max()
|
| |
二つの数値の最大値
Double max(Object num1, Object num2)
|
- Parameters
-
- num1, num2
-
演算値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
2つの数値の大きい方を表す
java.lang.Double 。
引数が不正の場合は null 。
|
|
min()
|
| |
二つの数値の最小値
Double min(Object num1, Object num2)
|
- Parameters
-
- num1, num2
-
演算値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
2つの数値の小さい方を表す
java.lang.Double 。
引数が不正の場合は null 。
|
|
abs()
|
| |
絶対値
- Parameters
-
- num
-
演算値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
絶対値を表す
java.lang.Double 。
引数が不正の場合は null 。
|
|
toDouble()
|
| |
数値を Double へ変換
Double toDouble(Object num)
|
- Parameters
-
- num
-
演算値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
入力値を表す
java.lang.Double 。
引数が不正の場合は null 。
|
|
toInteger()
|
| |
数値を Integer へ変換
Integer toInteger(Object num)
|
- Parameters
-
- num
-
演算値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
入力値を表す
java.lang.Integer 。
引数が不正の場合は null 。
|
|
roundTo()
|
| |
指定された小数点位置での数値の丸め処理
Double roundTo(Object decimals, Object num)
|
- Parameters
-
- decimals
-
小数点位置。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- num
-
丸める数値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
渡された数値を指定された小数点位置で丸めた
java.lang.Double 。
引数が不正の場合は null 。
このメソッドはシンプルな表示フォーマットを行うのに役立ちます。
最も近い整数値に丸めたい場合は java.lang.Double ではなく java.lang.Integer を返却する roundToInt() メソッドを使用するほうが良いでしょう。
|
|
roundToInt()
|
| |
一番近い整数値への数値の丸め処理
Integer roundToInt(Object num)
|
- Parameters
-
- num
-
丸める数値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
一番近い整数値へと丸めた
java.lang.Integer 。
引数が不正の場合は null 。
|
|
getRandom()
|
| |
乱数値の返却
- Returns
-
0.0 以上 1.0 未満の
java.lang.Double 。
|
|
random()
|
| |
指定された範囲の乱数の返却
Integer random(Object num1, Object num2)
|
- Parameters
-
- num1, num2
-
範囲の開始値と終了値。
有効な引数はあらゆる数値 (プリミティブ、もしくは Velocity が自動的にプリミティブに変換することのできるオブジェクト) 、または数値を表す String です。
- Returns
-
一番目の数値 以上 二番目の数値 未満の
java.lang.Integer 。
引数が不正の場合は null 。
|
|