- - PR -
ArrayList
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2004-04-13 13:32
毎々御世話になっております。
ArrayListについてお聞きしたいのですが、 以下のコーディングではString配列をaddする度に上書きされてしまうのですが どの部分がおかしいか指摘して頂ければ幸いです。 宜しくお願い致します。 ※各値は取得できています。 // ResultSet rs_inst // String[] str = new String[columnNum]; while( rs_inst.next() ) { if( null == strReceipt ) { strReceipt = rs_inst.getString( 1 ); for( int i = 0; i < columnNum; i++ ) { str[i] = rs_inst.getString( i + 1 ); } } else if( strReceipt.equals( rs_inst.getString( 1 ) ) ) { str[11] = rs_inst.getString( 12 ); } else if( !strReceipt.equals( rs_inst.getString( 1 ) ) ) { al.add( str ); strReceipt = rs_inst.getString( 1 ); for( int i = 0; i < columnNum; i++ ) { str[i] = rs_inst.getString( i + 1 ); } } } al.add( str ); |
|
投稿日時: 2004-04-13 17:01
こんにちは。
while( rs_inst.next() ) { の中で String[] str = new String[columnNum]; すればよいのでは? Listには配列への参照を登録しているだけなので 使いまわすとそのような事が起きると思います。 そのスコープ({ ... } の間)でしか使わない変数は、 スコープ内で定義するように意識するとミスが減りますよ。 |
1
