IntegerHashSet implements SnapshotableSet<Long>, Trackable { @Override public boolean contains(Object value) { if (value instanceof Integer || value instanceof Long) { synchronized (mutex) { return set.contains(((Number) value).intValue()); } } return false; } IntegerHashSet(int initialCapacity, int maxCapacity);  IntegerHashSet(int maxCapacity); private  IntegerHashSet(IntegerHashSet set); @Override boolean contains(Object value); @Override boolean add(Long value); @Override boolean remove(Object value); @Override int size(); @Override boolean isEmpty(); @Override Iterator<Long> iterator(); @Override Object[] toArray(); @Override T[] toArray(T[] result); @Override boolean containsAll(Collection<?> values); @Override boolean addAll(Collection<? extends Long> values); @Override boolean retainAll(Collection<?> values); @Override boolean removeAll(Collection<?> values); @Override void clear(); @Override SnapshotableSet<Long> makeSnapshot(); @Override SnapshotableSet<Long> makeTransientSnapshot(); @Override boolean hasChanged(); @Override boolean equals(Object o); @Override int hashCode();  }
@Test(groups = "fast") public void testContains() throws Exception { Assert.assertTrue(defaultSet.contains(0)); Assert.assertTrue(defaultSet.contains(8L)); }