То, что я ищу:
Я ищу, чтобы создать что-то, что принудительно вводит тип как для ключей, так и для значений карты: вроде как Map<Key<X>, Value<X>>. Тем не менее, я хотел бы дополнительно обеспечить, чтобы типы соответствовали каждой записи ключа/значения, но между записями не нужно вводить тип.
Например, на той же карте эти пары ключ/значение должны считаться действительными:
-
Key<Integer>отображается вValue<Integer> -
Key<String>отображается наValue<String> -
Key<Double>отображается наValue<Double>
Однако подобное недопустимо:
-
Key<Integer>отображение вValue<String> -
Key<Double>отображение вValue<Boolean>
Как это сделать с использованием дженериков Java?
То, что я не ищу:
-
Я понимаю, что я могу реализовать что-то вроде
Set<Pair>, где Пара принимает ключ/значение того же типа. Однако, глядя на это ключ больше не будет работать с постоянным временем. -
Я понимаю, что могу сделать что-то вроде
Map<Key<?>, Value<?>>и просто утверждать, что ключ и значение одного типа во время выполнения. Тем не менее, мне было интересно, возможно ли это, строго используя дженерики.