1. 程式人生 > >String、toString()、String.valueOf()比較

String、toString()、String.valueOf()比較

在開發中經常要用到將物件轉化成String的操作,通常有String強轉、toString()、String.valueOf()方法。這三種方法有什麼區別呢?

String

使用String強轉的時候,必須要確定被轉換的物件是String,否則會丟擲CalssCastException異常。

toString()

toString()是Object類中的方法,因此任何物件都可以呼叫toString()方法,但是需要注意的是,呼叫該方法之前,必須保證物件不為null,否則會報空指標異常。

String.valueOf()

這是String類中的靜態方法,這種方式不需要擔心物件是否為空,原始碼如下:

public static String valueOf(Object obj) {
    return (obj == null) ? "null" : obj.toString();
}

可以發現,該方法中對物件為空時做了處理,如果物件為空,返回string型別的”null”,這也是需要注意的地方。