### Question:
HistogramDataset extends AbstractIntervalXYDataset implements IntervalXYDataset, Cloneable, PublicCloneable,
                   Serializable { @Override public boolean equals(Object obj) { if (obj == this) { return true; } if (!(obj instanceof HistogramDataset)) { return false; } HistogramDataset that = (HistogramDataset) obj; if (!ObjectUtilities.equal(this.type, that.type)) { return false; } if (!ObjectUtilities.equal(this.list, that.list)) { return false; } return true; } HistogramDataset(); HistogramType getType(); void setType(HistogramType type); void addSeries(Comparable key, double[] values, int bins); void addSeries(Comparable key, double[] values, int bins,
            double minimum, double maximum); @Override int getSeriesCount(); @Override Comparable getSeriesKey(int series); @Override int getItemCount(int series); @Override Number getX(int series, int item); @Override Number getY(int series, int item); @Override Number getStartX(int series, int item); @Override Number getEndX(int series, int item); @Override Number getStartY(int series, int item); @Override Number getEndY(int series, int item); @Override boolean equals(Object obj); @Override Object clone();  }### Answer:
@Test public void testEquals() { double[] values = {1.0, 2.0, 3.0, 4.0, 6.0, 12.0, 5.0, 6.3, 4.5}; HistogramDataset d1 = new HistogramDataset(); d1.addSeries("Series 1", values, 5); HistogramDataset d2 = new HistogramDataset(); d2.addSeries("Series 1", values, 5); assertEquals(d1, d2); assertEquals(d2, d1); d1.addSeries("Series 2", new double[] {1.0, 2.0, 3.0}, 2); assertFalse(d1.equals(d2)); d2.addSeries("Series 2", new double[] {1.0, 2.0, 3.0}, 2); assertEquals(d1, d2); }