java使用反射来分配浮点值
} else if (fieldType.equals(Float.TYPE)) {
return random.nextFloat(); //catches primitive
} else if (fieldType.equals(Boolean.TYPE)) {
return random.nextBoolean();
} else if (Number.class.isAssignableFrom(fieldType)) {
return random.nextInt(Byte.MAX_VALUE) + 1; //catches Float
我怎样才能在同一个地方捕捉到原语和对象
(其中Class<?> fieldType
)
# 1 楼答案
与
Float.TYPE
和Float.class
比较首先是原语,而后者是包装器
即
if(fieldType.equals(Float.class) || fieldType.equals(Float.TYPE))