なんでも、来年の4月から禁煙に保険が適用されるかもしれないらしい。

禁煙するのは喫煙者の努力次第ってな解釈ではなく、「ニコチン依存症」として対策を打つそうだ。

今だと、禁煙のために通院すると月3~4万かかるらしいんだが、保険適用後は3割負担。

毎月のタバコ代と変わらないから、禁煙しようかな。


まぁ、最近はどこに行っても禁煙禁煙で、吸い難い世の中ではあるし。

ただ、路上喫煙を禁止するのはいいけど、何でその区域内でタバコを売るんだろうな。

「吸え」と助長しているとしか思えない。

世の中、矛盾だらけだと思った。

private Object[] factorizationOnPrimeNumbers(int val) {
List ansList = new ArrayList();
for(int i = 2;;i++) {
// 元となる数が1の場合は終了
if(val ==1) {
break;
}
// 元となる数が素数の場合は終了
if(val % i == 0 && val / i == 1) {
ansList.add(new Integer(i).toString());
break;
}
// 素数で分解できる場合
if(val % i == 0) {
val = val / i;
ansList.add(new Integer(i).toString());
i = 1;
}
}
return ansList.toArray();

}


引数valを素因数分解した結果をObjectの配列で返すメソッド。

テストもほとんどしていないから、バグだらけでしょう(藁

window.open(引数1, 引数2, 引数3);を使用する。
引数1:子画面のURL
引数2:子画面の名前
引数3:いろいろなオプション

オプションは・・・
- width : 横幅
- height : 縦幅
- directories : リンクツールバー
- location : アドレスバー
- menubar : メニューバー
- resizable : ウィンドウのリサイズ
- scrollbars : スクロールバー
- status : ステータスバー
- toolbar : ツールバー
などなど


基本的にデフォルト値が設定されているが、1つでも変更するとすべて「NO」になるっぽい。

ブラウザに依存しているのかもしれないけど。


おまけ

自身のアドレスを取得するにはlocation.href;を使用すればOK

BigDecimalのスケールについて


割合を表す小数点以下2桁の小数があるとする。

これをパーセンテージにするにはどうすればいいか。


BigDecimal dec = new BigDecimal(0.15); // Xは小数点以下2桁の小数
BigDecimal per = dec.multiply(new BigDecimal(100));

これとりあえずは大丈夫だが、perの中身にちょっと問題がある。

decを生成している箇所で、スケール = 2と暗黙のうちに設定しているので、per = 15.00となってしまう。

かといってdec.setScale(0)とするとエラーとなる。

これは元のスケールを下回るスケールを設定しようとすると、精度が保てない為に発生するらしい。

こっちは15と表示させたいだけなのに・・・。


と思ったらすばらすぃメソッドを発見。

movePointRight(int n)

小数点をn桁右に移動してくれる。

試しに

BigDecimal newDec = dec.movePointRight(2);

としてみたら、ちゃんとper = 15となった。

反数(絶対値が同じで符号だけ違う値)の求め方


BigDecimal dec = new BigDecimal(X); // Xとはある数値

BigDecimal antiDec = dec.multiply(new Bigdecimal(-1));


これでも求められるが、非常に美しくない。


で、BigDecimalクラスのメソッドを利用する。

BigDecimal dec = new BigDecimal(X); // Xとはある数値

BigDecimal antiDec = dec.negate();

実際、BigDecimalのソースを見てみると

public BigDecimal negate()
{
//Begin intLong support
if (intLong != NO_LONG)
{
return new BigDecimal(-intLong, scale);
}
//End intLong support
return new BigDecimal(intVal.negate(), scale);

}

となっている。

気が付いたら地上デジタル放送が受信できるようになってた。

ちょっと前まではアンテナの入力レベルが低くて、視聴できなかったんだけどな。


ただPCはアナログ放送をキャプしてるから、アンテナの分配器を買ってこなきゃ。

やっとこさ夏休みが取れたから、現実逃避も兼ねて温泉に行ってきた。


宿はこんな感じ


奮発して露天風呂付の部屋にしてしまったw


この宿はまだ新しくて、しかも3部屋しかないからかなりお勧め。

各フロアに1部屋しかなくて、全室露天風呂付で内風呂も2つあるし。

しかも俺が行ったときは、俺を含めても2組しかいなかったから内風呂も入りたい放題。

入ってないけどな・・・。


リフレーッシュ!!された気分。

来年の元旦は7年ぶりのうるう秒らしい。

そもそもうるう秒なんて初めて聞いた。


うるう秒とは地球の自転公転から求められる「 天文時 」と、電子時計から求められる時間とのずれが0.9秒に近づくため、その誤差をなくすものらしい。

そのため、来年の元旦は8時59分59秒の後に9時00分00秒ではなく、8時59分60秒というのが入ると。

1秒お得だw

DB2で大量のデータをimportなどをしようとするとこんなエラーが出てくる。
テーブルスペースの容量が不足しているのが原因。
回避するには
1. ちょっとずつimportする
2. テーブルスペースを大きくする。

UTなど環境周りに融通が利くのであれば、2.の方が楽かなと。
そんなわけでテーブルスペースの広げ方。

db2 get db cfg で「データベースの構成」を以下の項目を参照する。
ログファイルのサイズ LOGFISIZ = 1000
1次ログ・ファイル数 LOGPRIMARY = 3
2次ログ・ファイル数 LOGSECOND = 2

コマンドでどのサイズ・ファイル数を変更するか指定する。
db2 update db cfg using LOGFISIZ / LOGPRIMARY / LOGSECOND XX

これでOKなはず。

ブラウザはFirefoxと決めていたんだが、なんとなくOperaを入れてみた。

Opera誕生10周年記念ということで、日本時間の30日22時~31日22時限定でライセンスキーを無料発行してくれるってことだったから。

ライセンスがなくても広告が出てくるだけなんだけど。

ライセンスは購入すると$39だったような。


ちょこっと使ってみた感じだと無難な感じかなと。

乗り換える気はないから、もう使うことはないと思うw