Apache Commons Lang(アパッチ・コモンズ・ラング)は、ApacheのトッププロジェクトであるApache Commonsにある、Javaのjava.langパッケージを拡張するライブラリである。
使用例 例1 Object.equals() を拡張した物。nullが入っていても比較が可能である。
String s1 = null; String s2 = "abc"; if (ObjectUtils.equals(s1, s2)) { System.out.println("equal"); }
例2 Java のデフォルトの Object.toString() はメンバ変数の内容まで表示してくれないが、リフレクションを使用して、メンバ変数の内容を表示する形で、Object.toString() を実装する。
public String toString() { return ToStringBuilder.reflectionToString(this); }
例3 文字列の配列を受け取って区切り文字で連結して返す。
String[] array = new String[] { "Java", "Perl", "Lisp" }; String joined = StringUtils.join(array, ":");
// joined は "Java:Perl:Lisp" となる
このような「数行の処理でしかないが、実際書くのは煩わしい。」 「どこかで誰かが書いていて、誰が書いても似たようなコードになる。」 「この前も書いた。今回も書いた。次もきっと書く。」 と言った簡潔・頻出な処理は Commons Lang の得意とするところである。
脚注
外部リンク
Apache Commons Lang Apache Commons Lang Commons Lang