[英]Casting an instance of Object to primitive type or Object Type
当我需要将一个Object
类型的实例Object
转换为double时,以下哪个更好,为什么?
Double d = (Double) object;
要么
double d = (double) object;
不同之处在于,如果object
为null,则第一个表单将成功 - 第二个表单将抛出NullPointerException
。 因此,如果object
为null,则使用第一个 - 如果表示错误条件,则使用第二个。
这个:
double d = (double) object;
相当于:
Double tmp = (Double) object;
double t = tmp.doubleValue();
(或者只是((Double)object).doubleValue()
但是为了清楚起见,我喜欢将两个操作分开。)
需要注意的是,以中投double
只是Java 7的下有效的-虽然现在还不清楚从Java 7的语言增强功能页面 ,为什么这是真的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.