2013-08-06 31 views
0
} 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

+0

這並不完全清楚,但我有多年的解密Sun/Oracle論壇的經驗。 – Kayaman

回答

4

Float.TYPEFloat.class比較。

首先是原始的,後者是包裝。

I.e. if(fieldType.equals(Float.class) || fieldType.equals(Float.TYPE))

+0

另外,如果您發現它更一致,'float.class'等同於'Float.TYPE'。 –