import java.util.EnumMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.Map.Entry;
/**
* {@link <a href=
* "https://[Log in to view URL]"
* target= "_blank">Primitive EnumMap<K extends Enum<K>, V></a>}
*
* @author itammb ( Italia Massimiliano Buscati )
* @version JDK 1.15
*
*/
class Main {
public static class UniTestEnumMap {
public static enum Game {
CRICKET, HOCKEY, TENNIS
}
public void costructor() {
applayIterator(createTest());
}
/**
* @see EnumMap#put(Enum, Object)
*
*/
public void applayPut(Map<Game, Short> buffer) {
buffer.clear();
buffer.put(Game.TENNIS, (short) 0);
applayIterator(buffer);
}
public void applayEquals(Map<Game, Short> source) {
Map<Game, Short> other = createTest();
other.remove(Game.TENNIS);
applayEquals(source, other);
other = createTest();
applayEquals(source, other);
}
/**
* @see EnumMap#equals(Object)
*
*/
private void applayEquals(Map<Game, Short> source, Map<Game, Short> other) {
applayIterator(source);
applayIterator(other);
System.out.println(source.equals(other));
}
/**
* @see EnumMap#remove(Object, Object)
*
*/
public void applayRemove(Map<Game, Short> buffer) {
buffer.remove(Game.TENNIS);
applayIterator(buffer);
}
/**
* @see EnumMap#keySet()
*
*/
public void applayRemoveAll(Map<Game, Short> buffer, Set<Game> key) {
buffer.keySet().removeAll(key);
applayIterator(buffer);
}
/**
* @see EnumMap#forEach(java.util.function.BiConsumer)
*
*/
public void applayforEach(Map<Game, Short> buffer) {
buffer.forEach((k, v) -> System.out.print("[k=" + k + ", v=" + v + "] "));
println();
}
/**
* @see Map#entrySet()
* @see Iterator
*
*/
public void applayIterator(Map<Game, Short> buffer) {
if (buffer.isEmpty())
System.out.print("[]");
else
for (Iterator<Entry<Game, Short>> itr = buffer.entrySet().iterator(); itr.hasNext();)
System.out.print(itr.next() + " ");
println();
}
private static void println() {
System.out.println();
}
/**
* @see EnumMap#EnumMap(Class)
*
*/
public static EnumMap<Game, Short> createTest() {
EnumMap<Game, Short> buffer = new EnumMap<Game, Short>(Game.class);
buffer.put(Game.CRICKET, (short) 1);
buffer.put(Game.HOCKEY, (short) 2);
buffer.put(Game.TENNIS, (short) 3);
return buffer;
}
}
public static void main(String args[]) throws Exception {
// Unit test - crea una struttura
new UniTestEnumMap().costructor();
// Unit test - aggiunge una coppia chiave-valore nella struttura
new UniTestEnumMap().applayPut(UniTestEnumMap.createTest());
// Unit test - verifica se due strutture sono uguali ( stessi elementi )
new UniTestEnumMap().applayEquals(UniTestEnumMap.createTest());
// Unit test - rimuove dalla struttura un elemento associato a una chiave
new UniTestEnumMap().applayRemove(UniTestEnumMap.createTest());
// Unit test - rimuove massivamente chiavi dalla struttura
new UniTestEnumMap().applayRemoveAll(UniTestEnumMap.createTest(), UniTestEnumMap.createTest().keySet());
// Unit test - attraversa una struttura
new UniTestEnumMap().applayforEach(UniTestEnumMap.createTest());
// Unit test - attraversa una struttura con l'ausilio di un'interfaccia
// Iteretor<E>
new UniTestEnumMap().applayIterator(UniTestEnumMap.createTest());
}
}
To embed this project on your website, copy the following code and paste it into your website's HTML: