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)

4

1 に答える 1

4

と を比較しFloat.TYPEてくださいFloat.class

最初はプリミティブ、後者はラッパーです。

いえif(fieldType.equals(Float.class) || fieldType.equals(Float.TYPE))

于 2013-08-06T14:48:40.373 に答える