### Question:
IntObjectMap implements IHasSize { @Nullable public T put (final int key, final T value) { if (key == FREE_KEY) { final T ret = m_aFreeValue; if (!m_bHasFreeKey) { ++m_nSize; m_bHasFreeKey = true; } m_aFreeValue = value; return _getOld (ret); } int idx = _getPutIndex (key); if (idx < 0) { _rehash (m_aKeys.length * 2); idx = _getPutIndex (key); } final T prev = m_aValues[idx]; if (m_aKeys[idx] != key) { m_aKeys[idx] = key; m_aValues[idx] = value; ++m_nSize; if (m_nSize >= m_nThreshold) _rehash (m_aKeys.length * 2); } else { if (m_aKeys[idx] != key) throw new IllegalStateException (); m_aValues[idx] = value; } return _getOld (prev); } IntObjectMap();  IntObjectMap(final int nSize);  IntObjectMap(final int nSize, final float fFillFactor); @Nullable T get(final int key); @Nullable T get(final int key, final T aDefault); @Nullable T computeIfAbsent(final int key, @Nonnull final IntFunction <? extends T> aProvider); @Nullable T put(final int key, final T value); @Nullable T remove(final int key); @Nonnegative int size(); boolean isEmpty(); void forEach(@Nonnull final IConsumer <T> aConsumer); static final Object NO_VALUE; }### Answer:
@Test public void testPut () { for (final float ff : FILL_FACTORS) _testPutHelper (ff); }