Comparação entre objetos que herdam mesma superclasse
6 respostas
augustocolom
Boa noite pessoal,
Gostaria de saber se existe alguma função que compara se dois objetos são iguais. Tenho uma classe X, e uma X1 e X2 que herdam de X. Tenho uma arrayList de X que aloco objetos tanto do tipo X1 como do tipo X2. Tenho que separar esses objetos e alocá-los em ArrayLists diferente, alguém pode dar alguma dica?
Gostaria de saber se existe alguma função que compara se dois objetos são iguais. Tenho uma classe X, e uma X1 e X2 que herdam de X. Tenho uma arrayList de X que aloco objetos tanto do tipo X1 como do tipo X2. Tenho que separar esses objetos e alocá-los em ArrayLists diferente, alguém pode dar alguma dica?
Abraços
Cara, vi esse topico e achei ele interessante…
você tem uma superclasse X, tem duas subclasses (X1 e X2) que extendem X, e então tem as outras “n” subclasses que herdam X1 ou X2. Ai você vai então e cria algumas instancias de X1 e X2, e isso mesmo :?: i então você pega i quer separar em ArrayList do tipo X1 e outra do tipo X2 :?: :?:
ViniGodoy
remixlara:
tenta
if (x instanceof x1){
...
}
Se no futuro houver uma classe X3, que herda da classe X2 e ele não puder fazer parte da lista de X2, então o correto seria:
if (x.getClass() == X1.class){
...
}
O instance of retorna true se x for da classe x2, ou filha dela.
augustocolom
userguj:
Boa noite pessoal,
Gostaria de saber se existe alguma função que compara se dois objetos são iguais. Tenho uma classe X, e uma X1 e X2 que herdam de X. Tenho uma arrayList de X que aloco objetos tanto do tipo X1 como do tipo X2. Tenho que separar esses objetos e alocá-los em ArrayLists diferente, alguém pode dar alguma dica?
Abraços
Cara, vi esse topico e achei ele interessante…
você tem uma superclasse X, tem duas subclasses (X1 e X2) que extendem X, e então tem as outras “n” subclasses que herdam X1 ou X2. Ai você vai então e cria algumas instancias de X1 e X2, e isso mesmo :?: i então você pega i quer separar em ArrayList do tipo X1 e outra do tipo X2 :?: :?:
E aí,
Sim, essa seria a ideia. Crio um ArrayList que armazena objetos de X, crio duas subclasses de X, sendo elas X1 e X2. Dentro do meu ArrayList armazeno tanto objetos X1 como X2, depois para verificar as variações de objetos no ArrayList, basta usar o instanceof que ele resolve.