Podem me ajudar, como faço pra remover um elemento ja gravado em uma ARRAYLIST em java já que usa objetos.
Ola, tudo bem?
Não sei se entendi bem, mas para remover objetos do ArrayList você pode usar o método remove passando o objeto: list.remove(Objeto);
meuObjetoDoTipoArrayList.remove( objetoQueQueroRemoverDaLista );
ou
meuObjetoDoTipoArrayList.remove( posiçãoDoObjetoQueQueroRemoverDaLista );
Olá, ajudou e muito, obrigada.
deu certo obrigada.
Como eu posso retirar 2 ou mais elementos.
meuObjetoDoTipoArrayList.add(new Pessoa(“zé”));
meuObjetoDoTipoArrayList.add(new Pessoa(“Iza”));
meuObjetoDoTipoArrayList.add(new Pessoa(“Damião”));
meuObjetoDoTipoArrayList.add(new Pessoa(“zélia”));
Se eu quiser retirar o primeiro e o quarto itens?
package funcao;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import funcao.lib.Operacao;
import funcao.lib.Particula;
import funcao.lib.Signal;
import funcao.lib.Variavel;
public class Funcao {
private List<Particula> particula;
public Variavel getVariavel() {
return variavel;
}
public void elimina(int i) {
Particula p = particula.get(i);
particula.remove(p);
}
}
package funcao;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import funcao.lib.Particula;
import funcao.lib.Variavel;
public class OperacaoPolinomios {
public static void main(String[] args) {
Variavel val = new Variavel("x");
Funcao funcao1 = new Funcao("-3x^2-1", val);
Funcao funcao2 = new Funcao("x^2-2x+1", val);
OperacaoPolinomios op = new OperacaoPolinomios();
Funcao resultado = op.soma(funcao1, funcao2);
System.out.println(funcao1 + "+(" + funcao2 + ")= " + resultado);
}
public Funcao soma(Funcao eq1, Funcao eq2) {
List particula = new ArrayList();
Variavel v = eq1.getVariavel();
List eq1Exclude = new ArrayList();
List eq2Exclude = new ArrayList();
for (int i = 0; i <= eq1.totalTermos() - 1; i++) {
for (int j = 0; j <= eq2.totalTermos() - 1; j++) {
if (eq1.getParticula(i).getElevado() == eq2.getParticula(j).getElevado()) {
double resultadoAntecedentes = eq1.getParticula(i).getAntecedente()
+ eq2.getParticula(j).getAntecedente();
if (resultadoAntecedentes != 0) {
particula.add(new Particula(resultadoAntecedentes, eq1.getParticula(i).getElevado(), v));
eq1Exclude.add(i);
eq2Exclude.add(j);
}
}
}
}
List<Particula> da1 = eq1.getParticulas();
List<Particula> da2 = eq2.getParticulas();
for (int i = 0; i <= eq1Exclude.size() - 1; i++) {
System.out.println(eq1Exclude.get(i));
}
for (int i = 0; i <= eq2Exclude.size() - 1; i++) {
eq2.elimina(eq2Exclude.get(i));
}
for (int i = 0; i <= eq1.totalTermos() - 1; i++) {
particula.add(eq1.getParticula(i));
}
for (int i = 0; i <= eq2.totalTermos() - 1; i++) {
particula.add(eq2.getParticula(i));
}
eq1 = new Funcao(da1);
eq2 = new Funcao(da2);
return new Funcao(particula);
}
}
Não estou conseguindo sucesso?
Já deu uma lida na documentação da interface List?
Listas são indexadas em 0, ou seja, o primeiro elemento tem índice 0, o segundo índice 1, o terceiro 3 e assim por diante.
// remove o 1º elemento
meuObjetoDoTipoArrayList.remove(0);
// como removeu o 1º, o 4º virou o 3º elemento (posição 2)
meuObjetoDoTipoArrayList.remove(2);