当前位置: 首页 > 面试题库 >

使用反射查找类型为String,Boolean,Integer的字段

魏波娃
2023-03-14
问题内容

有没有一种方法可以在类的类型中查找字段

    java.lang.Character.TYPE
    java.lang.Byte.TYPE
    java.lang.Short.TYPE
    java.lang.Integer.TYPE
    java.lang.Long.TYPE
    java.lang.Float.TYPE
    java.lang.Double.TYPE

有一个char,byte,short等isPrimitive方法。


问题答案:

我正在寻找一种方法,该方法对于包装器类型将返回true。Springs ClassUtils提供了一种这样的方法

ClassUtils.isPrimitiveOrWrapper(field.getType())

对于我要求的所有上述内容,返回true,但String除外



 类似资料:
  • 问题内容: 我想通过反射找出一个字段是否是某种类型的实例。 可以说我有一个对象。现在,我想知道它是否具有作为实例的任何字段。我可以使用以下方法获取所有字段: 我可以通过以下方式获取字段的类型: 但是现在我想知道这种类型或任何超类型是否相等。我是否必须递归调用以确保检查所有超类型? 问题答案: 您必须使用isAssignableFrom。

  • 虽然我知道在Go中恐慌可能不是惯用的方法,但我希望测试以确保函数在某些情况下恐慌,而不是在其他情况下恐慌。 虽然我知道可以使用defer和recover来更简单地测试函数,但我很好奇是否可以编写一个通用函数,该函数可以接受任何函数和参数,并确定它是否导致了恐慌(假设函数完成)。 相关围棋游乐场:http://play.golang.org/p/qug7oguibd

  • 基本上,我的要求是通过使用反射来获取超类对象,以便获得字段名及其值。 所以,我有一门课 现在我正在使用 当我尝试使用以下代码访问该字段时,它会给我java.lang.Class类的类型。 它让我异常 有人能帮助我如何将其转换为对象,以便我可以访问文件夹

  • 问题内容: 我正在学习Java,它来自C语言,并且发现该类型的语言之间有一个有趣的区别。在C语言中没有/,因此我们需要使用数字类型来表示布尔逻辑()。 我猜在Java中不起作用: 也不会通过类型转换更改条件: 因此,除了要做类似的事情: 还有其他方法可以对类型进行C-ish逻辑检查吗?只是想知道是否有任何Java技巧可以在这样的非布尔类型上使用布尔逻辑。 编辑: 上面的示例非常简单,并且使自己陷入

  • 问题内容: 我使用的枚举中的常量是一个类。我需要在常量上调用一个方法,但无法引入编译时依赖性,并且枚举在运行时并非始终可用(可选安装的一部分)。因此,我想使用反射。 这很容易,但是我以前没有对枚举使用反射。 枚举看起来像这样: 用反射调用常量方法的例子是什么? 问题答案:

  • 我的问题是为什么找不到“name”字段?