|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--com.j_phone.util.FixedPoint
FixedPointクラスは、固定小数点演算機能を提供します。FixedPointオブジェクトは、ビット 16 を 1 の位とする固定小数点の数値を保持します。整数部、小数部ともに 16 ビットの精度を持ちます。内部演算制度は 64 ビット(整数部 32 ビット、小数部 32 ビット)です。
FixedPointクラスのコンストラクタおよび四則演算のメソッドのうち、int型の引数を与えるメソッドでは、引数はビット 16 を 1 の位とする固定小数とみなされます。
整数部と小数部の取得について、下記の点に注意してください:
値が正のとき、整数部の取得メソッドgetInteger()
では上位 16 ビットの数値を返し、小数部の取得メソッドgetDecimal()
では下位 16 ビットの数値が返されます。例えば、1.5に対してgetInteger()
は 1 を返し、getDecimal()
は 32768 を返します。
値が負のとき、整数部と小数部はともに負の数で取得されます。例えば、 -1.5 に対して整数部の取得メソッドgetInteger()
は -1 を返し、小数部の取得メソッドgetDecimal()
は -0.5 に 65536 を乗算した値 (-32768) を返します。
これらは固定小数表現の整数部(上位 16 ビット)や小数部(下位 16 ビット)とはそのまま対応していないことに注意してください。例えば -1.5 の固定小数表現の上位 16 ビットは -2 を表し、下位 16 ビットは +0.5 を表します。
値が正、負にかかわらず、getInteger()
で得られた値を 65536 倍( 16 ビット左シフト)した値と、getDecimal()
で得られた値を加算すればビット 16 を 1 の位とする固定小数表現になります。
コンストラクタの概要 | |
FixedPoint()
FixedPointコンストラクタ 0.0になります。 |
|
FixedPoint(int value)
FixedPointコンストラクタ 上位 16 ビットが整数部になり、下位 16 ビットが小数部になります。 |
メソッドの概要 | |
FixedPoint |
acos(FixedPoint v)
arccosを計算します。 |
FixedPoint |
add(FixedPoint n)
加算します。 |
FixedPoint |
add(int n)
加算します。 |
FixedPoint |
asin(FixedPoint v)
arcsinを計算します。 |
FixedPoint |
atan(FixedPoint v)
arctanを計算します。 |
FixedPoint |
clone()
コピーします。 |
FixedPoint |
cos(FixedPoint r)
cosを計算します。 |
FixedPoint |
divide(FixedPoint n)
除算します。 |
FixedPoint |
divide(int n)
除算します。 |
int |
getDecimal()
小数部を取得します。 |
int |
getInteger()
整数部を取得します。 |
static FixedPoint |
getMaximum()
最大値を取得します。 |
static FixedPoint |
getMinimum()
最小値を取得します。 |
static FixedPoint |
getPI()
πを取得します。 |
FixedPoint |
inverse()
逆数を計算します。 |
boolean |
isInfinite()
オーバーフローしているかどうかチェックします。 |
FixedPoint |
multiply(FixedPoint n)
乗算します。 |
FixedPoint |
multiply(int n)
乗算します。 |
FixedPoint |
pow()
2乗します。 |
void |
setValue(int value)
新しい数値を設定します。 |
FixedPoint |
sin(FixedPoint r)
sinを計算します。 |
FixedPoint |
sqrt()
平方根を計算します。 |
FixedPoint |
subtract(FixedPoint n)
減算します。 |
FixedPoint |
subtract(int n)
減算します。 |
FixedPoint |
tan(FixedPoint r)
tanを計算します。 |
クラス java.lang.Object から継承したメソッド |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
public FixedPoint()
public FixedPoint(int value)
value
- 新しい値メソッドの詳細 |
public int getInteger()
public int getDecimal()
public void setValue(int value)
value
- 新しい値 (65536 倍した整数)public FixedPoint add(FixedPoint n)
n
- 加算数public FixedPoint add(int n)
n
- 加算数 (65536 倍した整数)public FixedPoint subtract(FixedPoint n)
n
- 減算数public FixedPoint subtract(int n)
n
- 減算数 (65536 倍した整数)public FixedPoint multiply(FixedPoint n)
n
- 乗数public FixedPoint multiply(int n)
n
- 乗数 (65536 倍した整数)public FixedPoint divide(FixedPoint n)
n
- 除数ArithmeticException
- 除数が0の場合public FixedPoint divide(int n)
n
- 除数 (65536 倍した整数)ArithmeticException
- 除数が0の場合public FixedPoint sin(FixedPoint r)
r
- 角度(ラジアン)public FixedPoint cos(FixedPoint r)
r
- 角度(単位はラジアン)public FixedPoint tan(FixedPoint r)
r
- 角度(単位はラジアン)public FixedPoint asin(FixedPoint v)
v
- 値ArithmeticException
- 値が -1 から +1 の範囲になかった場合public FixedPoint acos(FixedPoint v)
v
- 値ArithmeticException
- 値が -1 から +1 の範囲になかった場合public FixedPoint atan(FixedPoint v)
v
- 値public FixedPoint sqrt()
ArithmeticException
- 負の値だった場合public FixedPoint inverse()
ArithmeticException
- 値が0の場合public FixedPoint pow()
public boolean isInfinite()
public FixedPoint clone()
public static FixedPoint getPI()
public static FixedPoint getMaximum()
public static FixedPoint getMinimum()
|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |