[英]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.