package org.itsnat.droid.impl.util;
import java.util.Iterator;
import java.util.Map;
/**
* Created by Jose on 09/11/2015.
*/
public abstract class MapSmart<Key,Value>
{
public static <Key,Value> MapSmart<Key,Value> create(int items)
{
if (items >= 6) return new MapSmartNormal<Key,Value>(); // Compensa hacer como máximo 3 búsquedas en vez de seis
else return new MapSmartArray<Key,Value>(items);
}
public abstract Iterator<Map.Entry<Key,Value>> iterator();
public abstract Value get(Key key);
public abstract void put(Key key, Value value);
public abstract boolean remove(Key key);
}