has beeen deleted!
Zuletzt bearbeitet:
Bei Arrays#equals(Object,Object) müssen die Objekte in der gleichen Reihenfolge sein, wie ich schon beschrieben hab. Ob es eine fertige Methode gibt ka, aber nimm mein Code von oben, entferne die erste If Abfrage, dann sollte die Methode true zurück geben, wenn alle Element aus arr1 auch in arr2 drin sind.Vergleicht die equals-methode die Objekte in der entsprechenden Reihenfolge?
Gibt es nicht auch eine andere Methode die schaut ob ein Objekt im anderen Array vorhanden ist, oder nicht?
Jop, wäre logischIch vermute mal in die, in der die search-Methode steht, oder?
Das Array in SearchCriteria sollst du durch eine List (z.b. ArrayList) ersetzen. Wäre mein Vorschlag.Welche Array oder Liste sollte ich durch eine List ersetzen? Anstatt der LinkedList?
Wie könnte ich die equalsMethode überschreiben?
RecipeIngredient enthält wiederum Ingredients. So viel vll. noch als Information.
Die habe ich mit
Ingredient ingredient;
Miteinander verknüpft.
if (criteria.getIngredients().equals(recipes.get(i).getRecipeIngredient()))
{
recipeList.add(recipes.get(i));
}
Set<Ingredient> a = new HashSet<Ingredient>(Arrays.asList(criteria.getIngredients()));
List<RecipeIngredient> list = recipes.get(i).getRecipeIngredient();
Set<Ingredient> b = new HashSet<Ingredient>();
for (RecipeIngredient ri : list)
{
b.add(ri.getIngredient());
}
if (a.equals(b))
{
recipeList.add(recipes.get(i));
}