Java 泛型类型转换,例如 <String, String> 到 <Object, Object>

Java generic type conversion like <String, String> to <Object, Object>

java有没有办法转换类型

来自 : <Object, Object>

至:<String, String>

来自 : <String, String>

至:<Object, Object>

我在 ConcurrentKafkaListenerContainerFactory<Object, Object>ConcurrentKafkaListenerContainerFactory<String, String>

之间

您必须使用中间原始类型。这是 ObjectString 转换的示例。反向转换看起来是一样的。

static ConcurrentKafkaListenerContainerFactory<Object, Object> stringFactoryToObjectFactory(
        ConcurrentKafkaListenerContainerFactory<String, String> stringFactory) {
    @SuppressWarnings("rawtypes")
    ConcurrentKafkaListenerContainerFactory rawTypeFactory = stringFactory;
    @SuppressWarnings("unchecked")
    ConcurrentKafkaListenerContainerFactory<Object, Object> objectFactory = rawTypeFactory;
    return objectFactory;
}

当然它违反了类型安全并且 ClassCastException 将在运行时发生,如果这些工厂将使用不同的类型。