HHeLiBeXの日記 正道編

日々の記憶の記録とメモ‥

2009-05-01から1ヶ月間の記事一覧

Collection#iterator() vs Collection#contains()

こんなコードを見かけることがある。 private boolean search(List<Xxx> list, Xxx target) { for (Xxx xxx : list) { if (xxx.equals(target)) { return true; } } return false; } こんなことをするなら、Object#equals()やObject#hashCode()を適切に実装して、</xxx>…

Text Searchインデックスの削除を忘れてしまった場合の対処

DB2

DB2 v9.5のText SearchもNSEと同様にテキスト検索用インデックスを管理するためのものだが、やはりNSEと同様に、テキストインデックスをDROPする前にテーブルやデータベースをDROPしてしまうと、自動更新スケジュールの定義だけが残りひどい目にあう。 で、…

StringBuilder#appendとStringの連結(+演算子)の続き

前に書いたStringBuilder#appendとStringの連結(+演算子) - HHeLiBeXの日記 正道編の「test1()とtest2()の処理速度が約3倍」という記述に違和感を覚えた。test1()とtest2()の差は、一時的なStringBuilderが生成されるかされないかだけであるはずだから、appe…

Integer#decodeメソッド

整数値を表すラッパークラス(Byte、Short、Integer、Long)には、decode(String)なるメソッドがあることをいまさら知った。 JavaDocを見ると、JDK 1.2から存在している。こういう基本的なクラスって、コード補完に頼ったりJavaDocを見たりしないので、逆に気…

org.w3c.util.UUIDとjava.util.UUID

ユニークなIDを生成するための手段として、org.w3c.util.UUID、またJava 5からはjava.util.UUIDがある、というのはいまさらな話。 org.w3c.util.UUIDでは、以下のような文字列が生成される。 <(1)とあるObjectのhashCode(16進)>-<(2)現在時刻(ミリ秒)(16進)>-…

IMPORTとLOADとcodepageの指定

DB2

データをデータベースにインポート/ロードする際には、コードページの指定は当然だと思っているが、コードページを指定していないスクリプトファイルに出くわしたことがきっかけで、ちょっと調べてみようと思った。 ちなみに、DB2 v9.5からLOADコマンドでXML…

SHORT PROGRAM GIRL'S TYPE

ショートプログラム~ガールズタイプ~ (少年サンデーコミックススペシャル)作者: あだち充出版社/メーカー: 小学館発売日: 2009/05/11メディア: コミック購入: 2人 クリック: 25回この商品を含むブログ (14件) を見る読切7作を収録した短編集。 帯に書いてあ…

StringBuilder#appendとStringの連結(+演算子)

StringBuilderに対して複数のStringをappendする場合、その呼び出しパターンは以下のコードに示される4種類に整理できる。 public class Test { private String s1 = "a"; private String s2 = "b"; private final String S1 = "a"; private final String S2…

Mapに対するiteration

こんなコード: Map<String, Integer> map = new HashMap<String, Integer>(); ‥ for (String key : map.keySet()) { Integer value = map.get(key); ‥ } を見るとモヤモヤしてしまう(謎)今日この頃。 そもそも、java.util.Mapに対するiterationには3種類ある。 keyのみが必要である場合 - Map#</string,></string,>…

"値が入力されている"の判定

“値が入力されている”ということを調べるのに、 if (s != null && !s.equals("")) { ‥ } とか、 if (s != null && s.length() > 0) { ‥ } という判定条件を書くことはよくあると思う。 if (!"".equals(s)) { ‥ } というのもあるかな。 ここで“値が入力されて…