關於我的代碼示例下來的時候如何序列化空值,如果一個Locable的變量爲null什麼shold怎麼辦?在例子中,現在如果l.getZoom()返回null,我得到了NullPointerException。使用Parcelable接口
@Override
public void writeToParcel(Parcel parcel, int arg1) {
parcel.writeInt(count);
for(Locable l:locableArr){
parcel.writeInt(l.getOriginId());
parcel.writeInt(l.getLocableType());
parcel.writeInt(l.getZoom());
parcel.writeDouble(l.getLatituda());
parcel.writeDouble(l.getLongituda());
parcel.writeString(l.getTitle());
parcel.writeString(l.getSnipet());
}
}
謝謝!
看來NPE是自動拆箱的結果。可能我應該檢查空值並將其設置爲0? – 2011-05-05 23:26:30
如果變焦已經值0+,考慮較空爲-1 – JAL 2011-05-05 23:29:16
現在我在做類似的事情,如果值是NULL我寫了一些值,-1或空字符串,我反序列化設置爲NULL時我。醜陋的...我想如果有人能證實這是對的,我會更滿意我的代碼。 – 2011-05-25 10:10:49