import java.util.HashMap;
import java.util.Map;

/** Una clave que cambia después de entrar al HashMap ya no se encuentra. */
public class MutableKeyDemo {

    public static void main(String[] args) {
        Map<MutableKey, String> seats = new HashMap<>();
        MutableKey seat = new MutableKey('A', 7);
        seats.put(seat, "alice");
        seats.put(new MutableKey('B', 3), "bob");
        IO.println("get(A7) = " + seats.get(new MutableKey('A', 7)));

        seat.moveTo('C', 2);                        // se modifica la clave ya guardada
        IO.println("mapa = " + seats);
        IO.println("get(C2) = " + seats.get(new MutableKey('C', 2)));
        IO.println("get(A7) = " + seats.get(new MutableKey('A', 7)));
        IO.println("containsKey(seat) = " + seats.containsKey(seat) + ", size = " + seats.size());
    }
}
