[Seasar-dev:249] Re: [S2Container] ToStringInterceptorコミットのお願い
Koichi Kobayashi
koichik
2006年 1月 14日 (土) 04:15:54 JST
小林 (koichik) です.
Date: Sat, 14 Jan 2006 03:49:32 +0900
From: 江里口 温 <on-eri @ vega.ocn.ne.jp>
To: seasar-dev @ lists.sourceforge.jp
Subject: [Seasar-dev:246] Re: [S2Container] ToStringInterceptorコミットのお願い
> ●余談ですが、
>
> 配列対応のために,コードが膨らんでしまいました。
>
> > byte[] array = (byte[]) value;
> > for (int i = 0; i < array.length; i++) {
> > if (i != 0) {
> > buf.append(ToStringInterceptor.FIELD_SEPARATOR);
> > }
> > buf.append(array[i]);
> > }
>
> の「byte」部分を他のプリミティブ型にそれぞれ置き換えたコードが必要に
> なってしまいました。
> Javaのプリミティブ型配列って、扱いが面倒ですね。
java.lang.reflect.Array を使ってみたところ,こんな感じになりました.
if (value == null) {
・・・
return;
} else if (value.getClass().isArray() == false) {
・・・
return;
}
buf.append(ARRAY_BEGIN);
for (int i = 0; i < Array.getLength(value); i++) {
if (i != 0) {
buf.append(ToStringInterceptor.FIELD_SEPARATOR);
}
append(buf, Array.get(value, i));
}
buf.append(ARRAY_END);
--
<signature>
<name>Koichi Kobayashi</name>
<e-mail>koichik @ improvement.jp</e-mail>
</signature>
seasar-dev メーリングリストの案内