fusão de vetores

4 respostas
Fernanda_A

alguem me ajuda!?

eu tenho q fazer uma fusão entre dois vetores…
fazer a fusão de vetores em si não é o problema, mas não sei como chamar os dois…

tenho q fazer algo + - assim:
1 - cadastrar usuarios(nome e telefone).
2 - qnd chegar no limite, 10 cadastros, avisar q o vetor está cheio.

// até aí bl…

3 - começar outro objeto:

como o [purple]cadastro.adicionaCliente()[/purple] está cheio, cria o [purple]cadastro2.adicionaCliente()[/purple]

// estamos indo bem…

4 - executar o metodo q junta o novo com o já armazenado.

// to perdida!! como eu carrego ele!? se eu colocar simplesmente um [purple] fusao( Cad cadastro2 ) [/purple] ele vai chamar o novo objeto criado!? não tem chances de ele tentar chamar o primeiro!?

se alguem puder me dar uma mãozinha…

=)

4 Respostas

luistiagos

bem para isto vc ira precisar colocar os brincos do Sr Kayo nas orelhas de cada vetor ou mandalos fazerem a dança e gritar: FUUUSSSSÂAAOOO…

bem agora falando serio: declare seu vetor como um List na classe cadastro depois crie um outro ArrayList que vai unir seus vetores… repare que a interface List tem o metodo addAll(Collection c) pegue este novo arrayList criado e invoque o addAll passando o vetor de cada objeto cadastro criado… no final todos eles estarão fundidos neste unico que vc criou…

Fernanda_A

algo como isso!?

void juntaCadastros(Cliente[] cadastros){
		if(!listaOrdenada)
			ordenaLista();
   
		int indiceListaDeClientes = 0, indiceCadastros = 0, indiceTemp = 0;
    
		Cliente[] temp = new Cliente[listaDeClientes.length + cadastros.length];

    
		while (indiceListaDeClientes < listaDeClientes.length && indiceCadastros < cadastros.length) {
			if ((cadastros[indiceCadastros].nome).compareTo(listaDeClientes[indiceListaDeClientes].nome) < 0) {
				temp[indiceTemp].nome = cadastros[indiceCadastros].nome;
				temp[indiceTemp].telefone = cadastros[indiceCadastros].telefone;
				indiceCadastros++;
			}
			else {
				temp[indiceTemp].nome = listaDeClientes[indiceListaDeClientes].nome;
				temp[indiceTemp].telefone = listaDeClientes[indiceListaDeClientes].telefone;
				indiceListaDeClientes++;
			}
			indiceTemp++;
		}
		
		while (indiceListaDeClientes < listaDeClientes.length) {
			temp[indiceTemp].nome = listaDeClientes[indiceListaDeClientes].nome;
			temp[indiceTemp].telefone = listaDeClientes[indiceListaDeClientes].telefone;
			indiceTemp++;
			indiceListaDeClientes++;
		}
		while (indiceCadastros < cadastros.length) {
			temp[indiceTemp].nome = cadastros[indiceCadastros].nome;
			temp[indiceTemp].telefone = cadastros[indiceCadastros].telefone;
			indiceCadastros++;
			indiceTemp++;
		}


	}

desculpa a falta de formatação... rs.. nem sei arrumar os codes aqui como estão nos outros topicos...

V

Para você formatar os trechos de código como nos posts de todos aqui, selecione o trecho do codigo no seu post e veja acima um botão chamado “Code”. Aí, antes, e depois do seu código vai aparecer uma tag e dentro da tag terá a palavra “code”.

abraços…

Fernanda_A

thanks!!!

Criado 27 de junho de 2008
Ultima resposta 27 de jun. de 2008
Respostas 4
Participantes 3