确定一个Class <! - ?的Java方法extends Number - >比另一个Class <! - 更宽?扩展数字 - >

时间:2015-09-04 11:14:34

标签: java casting numbers type-conversion

是否有一种Java方法可以确定一个Class<? extends Number>的实例是否可以无损地转换为另一个Class<? extends Number>的实例?

示例方法签名:

public static boolean canLosslessyConvert(Class<? extends Number> from, Class<? extends Number> to)

正确输出的例子:

canLosslessyConvert(Integer.class, Long.class)    == true
canLosslessyConvert(Long.class, Integer.class)    == false
canLosslessyConvert(Long.class, BigInteger.class) == true

首选Java 8 API中的方法,但如果不存在这样的方法,那么第三方库中的方法(如番石榴,春天,apache公共等)就可以了。

0 个答案:

没有答案