I need to determine the generic type(s) applied to a Java [code]Object[/code] at runtime. For a situation like [code]Map[/code], that is rather easy. I have code that looks like this: [code]protected Class[] getGenericParameterTypes(Field field) { ParameterizedType pt = (ParameterizedType) field.getGenericType(); Type[] types = pt.getActualTypeArguments(); Class[] ptClasses = new Class[types.length];
for (int i = 0; i < types.length; i++) { ptClasses[i] = (Class) types[i]; }
return ptClasses; } [/code] This works fine for the simple use case. What I'm struggling with is a situation that popped up where I have a more complex [code]Map[/code], like [code]Map[/code] or [code]Map[/code]. How do I apply this logic to get the types/parameterized types for this [code]Map[/code]?
Я хочу написать типизированный класс BaseCollection для уровня базы данных, который затем планирую создать подкласс для конкретных коллекций, например, для UserCollection. Цель состоит в том, чтобы а) иметь стандартизированный интерфейс и...
Я пытаюсь улучшить функцию, которая объединяет два значения одного типа и в настоящее время поддерживает int и str. Вот моя текущая реализация:
def combine (a: T, b: T) -> T:
match a:
case int():
return a + b
case str():
return a + b
Я пытаюсь улучшить функцию, которая объединяет два значения одного типа и в настоящее время поддерживает int и str. Вот моя текущая реализация:
def combine (a: T, b: T) -> T:
match a:
case int():
return a + b
case str():
return a + b