EeBlog(テクニカルブログ)

第15回 天文学的な数値計算

今回は大きな数値を扱う方法について書いてみたいと思います。
Javaの基本型でサポートしている数値型は全6種類あります。
その中で整数型なら「long型」、小数なら「double型」が最も大きい数値を表すことができます。
では、この型の限界を超えてしまった場合、どうやって計算するのでしょうか?

実はJavaには大きい桁数の数値を扱うクラスが用意されています。
整数なら「java.math.BigInteger」、小数なら「java.math.BigDecimal」です。

(さらに…)

第14回 プロパティキャッシュ

仕事でプログラムを組んでいると、性能向上ということで動作速度を求められることは少なくありません。
今回はスピードアップの方法として「プロパティキャッシュ」という技法を紹介したいと思います。
技術としては非常に簡単なものですので皆さんも無意識に行っているかもしれません。

オブジェクト指向の言語では参照型を戻すメソッドやフィールドがつながることが多々あります。
例えば、

(さらに…)

第13回 列挙型(enum)使いまくり

以前、 列挙型を使用しビットフラグ を実装しました。
今回は、列挙型についてもう少し詳しく解説して見たいと思います。
Javaの列挙型はクラスやインターフェイスと同レベルで実装されています。
つまり、内部クラス(列挙型)として作らない場合は1つのファイルで作るのが普通です。
また、クラスやインターフェイスと同様に「型」として扱われます。
そこで、もう少し詳しく見ていくと、Javaの列挙型は実は 「Enum」抽象クラス の実装として生成されています。

(さらに…)