java – Class.forName等效于从String创建ParameterizedType的
发布时间:2020-12-15 01:06:30 所属栏目:Java 来源:网络整理
导读:调用java.lang.reflect.Type.toString()提供了非常好的泛型类型表示: @Testpublic void typeToStringWithTypeToken() { assertEquals("java.util.List 我需要的是Type.toString()方法的反向,即可以从给定的字符串表示创建类型的方法: public static Type p
调用java.lang.reflect.Type.toString()提供了非常好的泛型类型表示:
我需要的是Type.toString()方法的反向,即可以从给定的字符串表示创建类型的方法:
哪个可以通过以下特殊类型的测试:
我找不到解决这个问题的库或SO问题. 最佳答案
嗯……您可以使用例如antlr4使用以下语法自己完成
ClassBuilder的样子
然后最后解析字符串
你可以看到工作示例here. 注意 CLASS lexer规则可能有点不准确.此解析器也仅适用于非基本类和参数化类型,但您当然也将其扩展为支持通配符类型. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |