Objectives implements Iterable<Entry<Objective, Value<?>>> { public boolean isEqual(Objectives opponent) { double[] va = this.array(); double[] vb = opponent.array(); for (int i = 0; i < va.length; i++) { if (va[i] != vb[i]) { return false; } } return true; }  @Override Iterator<Entry<Objective, Value<?>>> iterator(); double[] array(); int size(); Collection<Objective> getKeys(); Collection<Value<?>> getValues(); Value<?> get(Objective objective); Objective get(Value<?> value); void add(Objective objective, Value<?> value); void add(String name, Sign sign, Value<?> value); void add(Objective objective, double value); void add(String name, Sign sign, double value); void add(Objective objective, int value); void add(String name, Sign sign, int value); void addAll(Objectives objectives); boolean weaklyDominates(Objectives opponent); boolean dominates(Objectives opponent); boolean isEqual(Objectives opponent); double distance(Objectives other); @Override String toString();  }
@Test public void isEqualTest() { Objectives objectives0 = new Objectives(); objectives0.add("a", Sign.MIN, 3); Objectives objectives1 = new Objectives(); objectives1.add("a", Sign.MIN, 3); Objectives objectives2 = new Objectives(); objectives2.add("a", Sign.MIN, 4); Assert.assertTrue(objectives0.isEqual(objectives1)); Assert.assertFalse(objectives0.isEqual(objectives2)); }