algorist/src/main/java/net/abhinavsarkar/algorist/Map.java

41 lines
736 B
Java

package net.abhinavsarkar.algorist;
import java.util.Optional;
public interface Map<K, V> extends Iterable<Map.Entry<K, V>>
{
void put(K key, V val);
Optional<V> get(K key);
void remove(K key);
default boolean contains(K key) {
return this.get(key).isPresent();
}
class Entry<K2, V2> {
private final K2 key;
private final V2 val;
public Entry(K2 key, V2 val) {
this.key = key;
this.val = val;
}
public K2 getKey()
{
return key;
}
public V2 getVal()
{
return val;
}
public String toString() {
return "<" + key + "," + val + ">";
}
}
}