ソースの説明は端折りますが…
以下のコードで[vc2]にセットされた[hs3]の要素を参照(println)すると、
全ての要素に対し、最後に代入された値(k=4のデータ)が代入されています。
なぜこうなってしまうのでしょうか?
Info=Private-Class

Hashtable hs = new Hashtable();
Info inf = new Info();
inf.setColumnName( "hoge_000" );
hs.put( "key_000", inf );

for( int k=0; k<2; k++ ){
inf2 = new Info();
inf2=(Info)hs.get( "key_000" );
inf2.setColumnName( inf2.getColumnName() + ":" + k );
inf2.setAttribute( "attri_" + k );
Hashtable hs3 = new Hashtable();
hs3.put( String.valueOf(k), inf2 );
vc2.addElement( hs3 );
}
*上記の結果
k=0/hoge_000:0/attri_0
k=1/hoge_000:0:1/attri_1
*得たい結果
k=0/hoge_000:0/attri_0
k=1/hoge_000:1/attri_1