- PR -

Javaで固定小数点

1
投稿者投稿内容
maru
ぬし
会議室デビュー日: 2003/01/27
投稿数: 412
投稿日時: 2003-10-01 09:50
こんにちは。

金額計算のあるようなシステムでは浮動小数点を使うと1円単位での誤差が生じるため、
VBでは通貨型の固定小数点を使って演算していました。

Java(Cも)では固定小数点が見当たらないのですが、このような場合どのように処理
されているのでしょうか?
coasm
大ベテラン
会議室デビュー日: 2001/11/26
投稿数: 237
投稿日時: 2003-10-01 10:19
Javaだと、java.math.BigInteger や java.math.BigDecimal を使います。
未記入
ぬし
会議室デビュー日: 2002/03/28
投稿数: 255
投稿日時: 2003-10-01 22:02
>Java(Cも)では固定小数点が見当たらないのですが、
byte,short,char,int,long,などが「固定小数点数(の整数)」です.
#float,doubleが浮動小数点数.

>このような場合どのように処理されているのでしょうか?
多分,いわゆる多倍長(の固定小数点の整数)のことだと思う....
teto
ベテラン
会議室デビュー日: 2002/07/31
投稿数: 61
投稿日時: 2003-10-02 00:00
>VBでは通貨型の固定小数点を使って演算していました。

この固定小数点が具体的にどのように定義するべきものかわかりませんが、
事務系の金額計算をおこなうときは、
元の小数を整数値に直して(×10,×100,×1000なりする)
最後また10なり100なり1000なりで割りなおすだけですね。
もちろん、桁あふれしないように気をつけなければいけませんが。
1

スキルアップ/キャリアアップ(JOB@IT)