Witam,
Mam pytanie w jaki sposób mogę edytować elementy w ArrayList
?
Chodzi dokładnie o to, że mam utworzone obiekty klasy Zaangazowanie, które znajdują się w ArrayList
, niestety niektóre elementy się powtarzają, a dokładniej niektóre Cif
się powtarzają.
Problem polega na tym, że na liście nie mogą się powtarzać obiekty o tych samych Cif
. Niestety nie wiem jak doprowadzić do sytuacji w której pola zaangICBS
dla tych samych Cif
zostaną zsumowane i na liście pozostaną tylko unikalne Cif
. Macie jakieś propozycje? Do przeglądania ArrayList
wykorzystuję Iterator.
public class Zaangazowanie implements Comparable<Object>{
private int Cif;
private double zaangICBS=0;
private double zaangLea=0;
public Zaangazowanie() {
// TODO Auto-generated constructor stub
}
public Zaangazowanie(int _cif, double _icbs) {
this.Cif = _cif;
this.zaangICBS = _icbs;
this.zaangLea = 0;
}
public int getCif() {
return Cif;
}
public void setCif(int cif) {
Cif = cif;
}
public double getZaangICBS() {
return zaangICBS;
}
public void setZaangICBS(double zaangICBS) {
this.zaangICBS = zaangICBS;
}
public double getZaangLea() {
return zaangLea;
}
public void setZaangLea(double zaangLea) {
this.zaangLea = zaangLea;
}
public int compareTo(Object obj) {
int wynik = String.valueOf(this.Cif).compareTo(String.valueOf(((Zaangazowanie) obj).Cif));
return wynik;
}
}