[quote=“Rafael Steil”]Voce esta adicionando um item na posicao 0 e tentando pegar da posicao 1
Rafael[/quote]
Pois eh , mas eu pensava que esse codigo : currentRow.add(i-1,rs.getString(i)); estivesse pegando um elemento e adcionando na posicao 0, pegando um outro elemento e adcionando na posicao 1, e assim sucessivamente !! Como entao fazer isso ?? Ou seja como adicionar elementos em cada posicao do Vector ??
Ha algumas maneiras bem simples… voce basicamente usou a abordagem errada para manipular. Usando o teu codigo original, uma ligeira mudanca no get() resolveria:
Vector currentRow = new Vector();
for (int i= 1; i <= 10; i ++){
currentRow.add(i - 1,rs.getString(i));
System.out.println(currentRow.get(i - 1));
}
porem, voce poderia trocar por
Vector currentRow = new Vector();
for (int i= 0; i < 10; i ++){
currentRow.add(i, rs.getString(i + 1));
System.out.println(currentRow.get(i));
}
o que eh um pouco melhor que a primeira versao, mas ainda ruim. O correto seria voce usar o addElement() do Vector:
Vector currentRow = new Vector();
for (int i= 0; i < 10; i ++){
currentRow.addElement(rs.getString(i + 1));
System.out.println(currentRow.get(i));
}
porem, isso pode dar problema se voce nao tiver 10 elementos no ResultSet. Portando, faca simplesmente
Vector currentRow = new Vector();
int counter = 0;
while (rs.next()) {
currentRow.addElement(rs.getString(counter));
System.out.println(currentRow.get(counter));
counter++;
}