Duas Listas Encadeadas e apenas um método de inserção

Pessoal que coisa de louca. Alguem ja viu o vai ver agora essa parada louca de No em lista. Tipo eu estava desenvolvendo uma aplicação que envolve a soma de duas listas encadeadas distintas a,b. Quando compilei tudo certo. Mas o resultado final foi um desastre. So a lista “a” foi preenchida e “b” ficou vazia. Por que será? Se tenho um método de inserir na lista… Isso tem a haver com a quantidade de nos que trabalhamos na lista? Tipo. Eu tenho apenas o item primeiro como no.
Comentem ai… Pedaços de codigo:

	Lista a = new Lista();
		Lista b = new Lista();

aplicação.


public Lista(){
	    primeiro = null;
	    ultimo = null;
	  }

public void insere(int valor){
	  	
	  	No tmp = new No();
	  	tmp.setValor(valor);
	  	tmp.setProx(primeiro);
	  	primeiro = tmp;
	  } 

classe lista.

Não entendi muito o seu problema. Supondo que a implementação da lista está correta (não verifiquei) falta o codigo que preenche a lista. E esse tem que repetir para cada lista:

Lista a = new Lista();
Lista b = new Lista();

a.insere(2);
b.insere(2);
a.insere(3);
b.insere(3);

Inserir apenas em a nunca irá inserir nada em b.