请问如何判断JAVA反射的invoke调用的方法返回值是null与0?
Class<?> tagClass = tag.getClass();
for(Field field : tagClass.getDeclaredFields()) {
Method g = tagClass.getMethod("get"+field.getName().substring(0,1).toUpperCase()+field.getName().substring(1));
if(g.invoke(tag) != null) {
System.out.println("Hello");
}
}
Tag 模型的字段有String 和int 类型
初始String是null
初始int 是0
在if体,我只判断了不为null
我想要的是怎么判断g.invoke(tag)
不为null 与 g.invoke(tag)
不等于0,才可以打印Hello
我试过转换(int)g.invoke(tag)
,但是遇到null值,就控制台报错了.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
嗯。判断类型,然后再进行转换,与0的值进行比较即可~