Arrays redimensionaveis

5 respostas
S

Eae pessoal, to com uma duvida aki sobre arrays…supondo q eu tenha uma array de strings chamada vars, inicialmente ela tem 3 indices (0,1,2), porem se faz necessario q eu aumente em +1 o tamanho dela, que passaria para 4.

Eu sei q eu poderia fazer isso usando 2 variaveis, onde em uma eu armazenaria temporariamente o valor dos 3 indices, daria um novo tamanho pra variavel original, traria de volta os valores e acrecentaria o adicional. Porém como da pra ver esse metodo eh mto longo e trabalhoso pra maquina…nao existe um modo mais simples como por exemplo:

vars.append("valor 4");

obrigado pelajuda…:grin:

5 Respostas

B

OLá, bom dia

Eu diria pra você dar uma olhada no pacote java.util, lá você tem classes que implementam coisas que podem ser arrays, tipo o Vector, os Lists, os Maps e os Sets, cada um deles com uma funcionalidade básica, valeu uma olhada, mas se você tiver mesmo que usar arrays, tente o seguinte:

Mas dá uma olhada nas classes citadas

Valeu

B

OLá, bom dia

Eu diria pra você dar uma olhada no pacote java.util, lá você tem classes que implementam coisas que podem ser arrays, tipo o Vector, os Lists, os Maps e os Sets, cada um deles com uma funcionalidade básica, valeu uma olhada, mas se você tiver mesmo que usar arrays, tente o seguinte:

Object[] ob = new Object[]{"0","1","2"};
Vector v = new Vector();
for(int x=0;x<ob.length;x++){
   v.add(ob[x]);
}
v.add("3");
ob = new Object[v.size()];
v.copyInto(ob);

Mas dá uma olhada nas classes citadas

Valeu

R

só complementando…
http://java.sun.com/developer/JDCTechTips/2002/tt0910.html

S

BrunoCarlo: Qual seria a diferenca entre eu usar um Vector e um List ??? qual eh mais rapido??

renan_daniel: hehehe…calma cara…lista encadeada e essas coisas ainda eh demais pra mim em java… :lol:

vlw pela ajuda… :wink:

B

sdm o mais rápido é o list, pois o vector tem seus métodos sincronizados por natureza, mas esta desição de usar um ou outro depende do que você vai usat, é +/- isso:

coleções não impõem ordem, nem restrições em duplicação de conteudo;

listas mantém uma ordem (possivelmente inerente em dados, possivelmente imposta externamente);

conjuntos rejentam entradas duplicadas;

os mapas usam chaves únicas para facilitar a busca de seus conteudos;

arrays torna inserção, remoçãoe crescimento de armazanagem mais dificil;

uma lista encadeada suporta inserção, remoção e crescimanto de armazanagem, mas torna o acesso indexado mais lento;

uma arvore suporta inserção, remoção e crescimanto de lista. o acesso indexado é lento, mas a busca é mais rapida

hash suporta inserção, remoção e cresicimento de armazanagem. o acesso indexado é lento, mas a busca é especialmente rápida. no entento, o hash exige o uso de chaves únicas para armazenar elementos de dados.

Esta é um resumo que fiz pra mim em relação a arrays e afins dop pacote java.util, agora qual usar depende do que você pretende fazer, para casos simples eu ,particulamente, uso o vector, por ser facil de usar e eu estar mais abituado, mas faz você uma pesquisa, de uma olhada no que escrevi ai em cima e escolha a sua melhor.

Espere ter ajudado.

Valeu

Criado 23 de janeiro de 2005
Ultima resposta 25 de jan. de 2005
Respostas 5
Participantes 3