Problema com List

Pessoal… eu tenho um objeto que é “bi-direcional” com outro objeto… não sei c o nome é adequado mas…
Digamos que meu objeto 1 se chama BolaEstrutura e objeto 2 chama BolaModelo

Eles são ligados. a partir de um eu chamo o outro, eles são em par

BolaEstrutura estrutura = getBolaEstrutura(); BolaModelo modelo = estrutura.toModelo(); (modelo.toEstretura() == estrutura) //isso é sempre verdade (estretura.toModelo() == modelo) //isso é sempre verdade

Sendo assim a partir de um posso chamar o outro… a minha duvida é como fazer um List de um virar o do outro

queria conseguir fazerList<BolaEstrutura> estruturas = getListaDeEstrutura(); List<BolaModelo> modelos = estruturas.toModelos(); //e gostaria que modelos.toEstruturas() == estruturas;

Alguem sabe uma forma facil ?? consegui fazer boa parte do objeto pra converter um no outro… mais na hora das collection, ficou ruim…

Nesse caso, você deverá criar um método estático para transformar um List de um tipo em outro. Algo como:

public class BolaEstrutura {
    // tudo que você já tem...
    public static List<BolaModelo> toModelo(List<BolaEstrutura> listEstr) {
        List<BolaModelo> listModel = new ArrayList<BolaModelo>();
        for (BolaEstrutura b : listEstr) {
            listModel.add(b.toModelo());
        }
        return listModel;
    }
}

E fazer algo similar na classe BolaModelo. Para usar:

List<BolaEstrutura> estruturas = getListaDeEstruturas();
List<BolaModelo> modelos = BolaEstrutura.toModelo(estruturas);

Acho que isso funciona (não testei nada…). Qualquer dúvida, poste aqui.