【问题标题】:Java - getting variable type for primitive data typesJava - 获取原始数据类型的变量类型
【发布时间】:2015-05-07 12:45:35
【问题描述】:

是否可以仅使用一行代码将输入变量的数据类型(可以是任何原始类型、int、bool、float、double)作为字符串返回?我知道这可以很容易地使用getNamegetShortName 对 String 类型完成,但我不确定如何使用这些方法返回原始类型的类型。我还想让我的代码非常简短,最好只使用一行。

我已经四处搜索,但找不到任何地方按照我要求的方式回答了这个问题。

【问题讨论】:

  • “输入变量”是什么意思?如果您可以发布一个完整的示例来说明您正在尝试实现的目标,并通过适当的magicMethod 调用或任何代表您不知道该怎么做的内容,这将非常有帮助。
  • 我不确定你是否可以,但你不会在编译时总是知道这一点吗?由于原语不是对象,因此没有歧义,它必须是声明的类型是什么?
  • 不确定为什么要这样做,但不能对原始类型执行此操作。如果可能,您可以使用相应的包装器类型。
  • 也许这个关于类似主题does-int-class-equal-integer-class-or-integer-type-in-java的答案确实有帮助。

标签: java reflection primitive


【解决方案1】:

Class.getName() 呢?

返回实体的名称(类、接口、数组类、 此 Class 对象表示的原始类型或 void)作为 细绳。如果此类对象表示的引用类型不是 数组类型,然后返回类的二进制名称,如 由 Java 语言规范第二版指定。

如果这个类对象代表一个原始类型或 void,那么 返回的名称是一个等于 Java 语言关键字的字符串 对应于原始类型或void

您可以关注Java Doc中的this link,该文档很好地解释了如何使用此方法。

【讨论】:

    猜你喜欢
    • 2021-08-01
    • 2011-09-04
    • 1970-01-01
    • 2014-09-12
    • 2023-02-20
    • 1970-01-01
    • 2010-11-01
    • 1970-01-01
    • 2013-02-02
    相关资源
    最近更新 更多