私はElementfisaという名前のエンティティを持っています。これには値(id、Post、Sarcina)が含まれています。今、Post(Int Id、String Nume、String Tip)とSarcina(Int Id、String Desc)もエンティティです。私はElementfisaとして追加したすべての要素のリストを持っており、Elementfisaに含まれるすべてのSarcinaの頻度を別々のリストに入れたいと考えています。これが今の私のコードです:sarciniリストは、すべてのElementfisaからすべてサルシナ、周波数リストが含まれていながら、エンティティリスト内の値の頻度
int nr=0;
List<Integer> frecv=new ArrayList<Integer>();
List<Sarcina> sarcini = new ArrayList<>();
List<Elementfisa> efuri=findEFAll();
for (Elementfisa i : efuri)
{
nr=0;
for (Sarcina s : sarcini)
if (s.equals(i.getSarcina()))
nr=1;
if (nr==0)
{
int freq = Collections.frequency(efuri, i.getSarcina());
sarcini.add(i.getSarcina());
frecv.add(freq);
}
}
、(findEFAll()は、リポジトリからハッシュマップに含まれるすべての要素を返します) しかし、いくつかの理由ですべての位置に0が表示されます。私はどのような位置に正しい発生回数が表示されるように変更する必要がありますか?
は空efuriですか? – Moira
いいえ、Elementfisaエンティティ(id、Post、Sarcina)が含まれています – Artyomska
'if(nr == 0)'を 'if(!sarcini.contains(i.getSarcina())'に置き換え、 'nr'コード。また、あなたは 'equals()'をオーバーライドしましたか? – Moira