在Java中查找变量的原始数据类型

时间:2018-09-15 21:16:29

标签: java primitive-types

我想知道如何判断两个变量在Java中是否共享相同的原始数据类型。假设有一个方法compareType(),如果两个变量确实共享相同的原始数据类型,则该方法将返回true。否则为假。

例如,

int i = 1;
int i1 = 2;
long l = 1;
float f = 0.1f;
double d = 0.1d;

然后,compareType(f,d)将返回false; compareType(i,l)将返回false; compareType(i,i1)将返回true;

我知道在Python中有一个函数type(),它将返回类似“ int”的内容,而compareType()的关键组件是Java中的一个函数,其工作方式类似于Python中的type()。这就是我要寻找的。

1 个答案:

答案 0 :(得分:3)

static boolean compareType(Object a, Object b) {
    return a.getClass().equals(b.getClass));
}

这些原语将被强制转换为对应的对象。因此,如果进行比较,则Integer和ints将返回true。

话虽这么说,我无法想象使用此方法的充分理由。