### Question:
KeyedObjectMap extends AbstractLong2ObjectSortedMap<T> implements Serializable, Iterable<T> { @Override @SuppressWarnings("unchecked") public boolean containsValue(Object v) { if (v == null) { return false; } long key; try { key = extractor.getKey((T) v); } catch (ClassCastException ex) { return false; } int idx = findIndex(key); return idx >= 0 && data.get(idx).equals(v); } KeyedObjectMap(Iterable<? extends T> objs, KeyExtractor<? super T> ex); @SuppressWarnings("unchecked") private  KeyedObjectMap(Iterable<? extends T> objs, KeyExtractor<? super T> ex, boolean sorted); static KeyedObjectMapBuilder<T> newBuilder(KeyExtractor<? super T> ex); static KeyedObjectMapBuilder<T> newBuilder(); static KeyedObjectMap<T> create(Collection<? extends T> objs); static KeyedObjectMap<T> create(Iterable<? extends T> objs, KeyExtractor<? super T> ex); @Override ObjectSortedSet<Entry<T>> long2ObjectEntrySet(); @Override LongSortedSet keySet(); @Override ObjectCollection<T> values(); @Override ObjectBidirectionalIterator<T> iterator(); @Override LongComparator comparator(); @Override KeyedObjectMap<T> subMap(long from, long to); @Override KeyedObjectMap<T> headMap(long l); @Override KeyedObjectMap<T> tailMap(long l); @Override long firstLongKey(); @Override long lastLongKey(); @Override T get(long k); @Override boolean containsKey(long k); @Override @SuppressWarnings("unchecked") boolean containsValue(Object v); @Override int size();  }### Answer:
@Test public void testContainsValue() { KeyedObjectMap<String> m = createMap("42", "39", "108"); assertThat(m.containsValue("42"), equalTo(true)); assertThat(m.containsValue(null), equalTo(false)); assertThat(m.containsValue("108"), equalTo(true)); assertThat(m.containsValue("107"), equalTo(false)); assertThat(m.containsValue(107L), equalTo(false)); }