データベースにはbooleanでデータが入っているのに画面では0か1の数字でないと表示ができないときなどがあると思います。
そんな時に文字列と論理値、あるいは文字列と数値、数値と論理値の変換などをすることがあります。
単純にif文で分岐してもいいんですが、Nullに気を付けましょう。
Javaの場合、初心者のうちはとにかくNullの扱いに気を付けないといけません。
PHPはいい加減な言語なので、適当に書いても動きますが(爆)、Javaの場合はNullの可能性を考慮していないと、イレギュラーケースでバグが起こります。
そういったことから自力でやるよりもライブラリを使ったほうがよいです。Apache commonsを使います。
Contents
論理値から数値へ
下記のコードはdbDeleteFlg (論値)を数値変換してdeleteFlg(数値)にしています。
第2引数はdbDeleteFlgがtrueだったときの数値、
第3引数はdbDeleteFlgがfalseだったときの数値、
第4引数はdbDeleteFlgがnullだったときの数値です。
1 |
deleteFlg = BooleanUtils.toInteger(dbDeleteFlg, 1, 0, 0); |
数値から論理値へ
また数値から論理値への変換も簡単です。
ownerというクラスがもっているdbDeleteFlg(論理型)にdeleteFlg(数値)を変換して代入しています。
1 |
owner.setDbDeleteFlg(BooleanUtils.toBoolean(deleteFlg)); |
ちなみに参考リンクは下記です。
情報が網羅されており大変使いやすいですね。