У меня есть класс, и этот класс создает 7 списков массивов:
public class Fruchtplanungsmodul {
private ArrayList<Crops> fruchtliste1F;
private ArrayList<Crops> fruchtliste2F;
private ArrayList<Crops> fruchtliste3F;
private ArrayList<Crops> fruchtliste4F;
private ArrayList<Crops> fruchtliste5F;
private ArrayList<Crops> fruchtliste6F;
private ArrayList<Crops> fruchtliste7F;
// Constructor
public Fruchtplanungsmodul() {
fruchtliste1F = new ArrayList<>();
fruchtliste2F = new ArrayList<>();
fruchtliste3F = new ArrayList<>();
fruchtliste4F = new ArrayList<>();
fruchtliste5F = new ArrayList<>();
fruchtliste6F = new ArrayList<>();
fruchtliste7F = new ArrayList<>();
}
functions for deleting Objects....
}
И я хочу загрузить Объекты в этом списке с помощью правил Drools.
Я загружаю один и тот же Objecttyps во все Arraylists. Например, в этом правиле я загружаю 4 Objects Crops в первый ArrayList.
rule "Körnerlegmunosen: Planung erste Feldrigkeit"
when
//$grund: Grundbedingung(grundbedingung == 1)
$feld: Feldrigkeit(feldrigkeit1 == "Körnerleguminosen")
$m: Fruchtplanungsmodul()
then
Crops erbse = new Crops("Erbse", "Koernerleguminose","BF", "Hafer", "Silomais", "Sommerung", 6);
Crops ackerbohne = new Crops("Ackerbohne" , "Koernerleguminose", "BF", "Silomais", "Wintergerste", "Sommerung", 4);
Crops lupine = new Crops("Lupine", "Koernerleguminose", "BF", "Späte Kartoffel", "Winterroggen", "Sommerung", 4);
Crops sojabohne = new Crops("Sojabohne", "Koernerleguminose", "BF", "Futterrübe", "winterroggen", "Sommerung", 3);
insert(erbse);
insert(ackerbohne);
insert(lupine);
insert(sojabohne);
$m.addFrucht1(erbse);
$m.addFrucht1(ackerbohne);
$m.addFrucht1(lupine);
$m.addFrucht1(sojabohne);
end
В других правилах я загружаю разные кадры в другие списки ArrayList из класса Fruchtplanungsmodul ().
Мой вопрос: есть ли способ сравнить объекты из разных списков массивов?
Например, ArrayList "fruchtliste2F" имеет 4 объекта типа Crops, а ArrayList "fruchtliste3F" также имеет 4 объекта типа Crops. Теперь мне нужно проверить с помощью правила, есть ли один объект с тем же именем в обоих списках массивов. Если это так, правило должно удалить объект из второго списка.
Спасибо за вашу помощь!
Philipp