首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javaparser泛型方法

javaparser泛型方法
EN

Stack Overflow用户
提问于 2014-12-03 20:06:21
回答 2查看 565关注 0票数 0

我可以用javaparser解析泛型方法吗?如果可能的话,怎么做?例如,这是我的方法:

代码语言:javascript
复制
public static < E > void printArray( E[] inputArray )
   {
      // Display array elements              
         for ( E element : inputArray ){        
            System.out.printf( "%s ", element );
         }
         System.out.println();
    }

当我使用MethodVisitor解析并使用MethodVisitor.getParameters().getType时,我得到了E[],但我需要知道它是对象。它是可定位的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-12-07 17:21:28

唯一的方法是创建自己的解析器。JavaParser返回BeginLine方法,唯一的方法是解析这一行。

代码语言:javascript
复制
public static < E > void printArray( E[] inputArray )

当我们删除所有的修饰符(公共和静态)和下一个不等于返回类型(Void)的值时,我们得到并且知道E是Object。

票数 0
EN

Stack Overflow用户

发布于 2015-02-16 20:02:43

如果我正确理解了您的问题,您希望JavaParser告诉您,E没有扩展任何东西,所以它可能是一个对象。这是JavaParser所不能做的,因为它只是一个解析器:它构建AST,但它不尝试解析符号、分析类型等等,因此它不能用于您的目标。您可能想尝试类似Eclipse的东西(它在Eclipse之外也是可用的,只要付出一些努力.)

免责声明:我是JavaParser的撰稿人

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27280652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档