在實際編碼中總是會遇到 空指針異常 ,本文總結(jié)了一些處理空指針的個人經(jīng)驗。
在成都網(wǎng)站建設(shè)、網(wǎng)站制作過程中,需要針對客戶的行業(yè)特點、產(chǎn)品特性、目標受眾和市場情況進行定位分析,以確定網(wǎng)站的風(fēng)格、色彩、版式、交互等方面的設(shè)計方向。成都創(chuàng)新互聯(lián)公司還需要根據(jù)客戶的需求進行功能模塊的開發(fā)和設(shè)計,包括內(nèi)容管理、前臺展示、用戶權(quán)限管理、數(shù)據(jù)統(tǒng)計和安全保護等功能。
盡早的檢查,盡早的失敗。
比如: 通過intent傳參到新的目標 activity,而且一定需要這個參數(shù),那么在新的目標activity中 onCreate方法中 判斷中這個參數(shù),如果null,直接拋出空指針異常讓程序崩潰。取代在使用該參數(shù)時進行檢查,這樣能更早的發(fā)現(xiàn)問題?;蛘咴?一個普通的方法中,一個 參數(shù)必須不能為null ,那么我們在這個方法的第一行就做出判斷,如果參數(shù)為null,拋出空指針異常。
1.不要在Set中使用null
2.不要把null作為map的鍵值。
3.盡可能的盡早檢查,如果為 null 不執(zhí)行或者 結(jié)束本方法
4.遇到必須的參數(shù),比如通過intent傳參到新的目標 activity,而且一定需要這個參數(shù),那么在新的目標activity中判斷是否有參數(shù)
5.判斷字符串是否空
6.對字符串比較時,如果和常量進行比較,把常量放在前面,比如:
7.將某個對象 toString時,比如:
8.使用注解 @NonNull 和 @Nullable 配合AndroidStudio 幫你檢查你是否沒有檢查可能為null的對象,或者你是否做了多余的檢查。
9.我們引用Guava來幫忙檢查 null 的情況,我們使用 checkNotNull 方法來替代寫 if( obj == null) throw new NullPointExcetion(); ,示例:
Guava是什么:
定義一個不是返回基本數(shù)據(jù)類型的函數(shù)就可以直接返回null,如:
//此處的 String 可以替換為任意非基本數(shù)據(jù)類型
public String getString(){
return null;
}
Android(中國漢化稱為“安卓”)是由美國谷歌公司開發(fā)的一款可以在移動設(shè)備,電視。家用電器甚至是汽車飛機中應(yīng)用的智能操作系統(tǒng)。目前市面上有很多安卓智能手機。例如國際大牌華為,三星,小米,LG等移動設(shè)備都在運行Android智能操作系統(tǒng)。
null只是字符串,代碼
android(null)并沒有這個東西。或許搞錯了吧。
本文名稱:androidnull,android nullable
本文地址:http://jinyejixie.com/article0/dsecpoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、響應(yīng)式網(wǎng)站、網(wǎng)站營銷、面包屑導(dǎo)航、小程序開發(fā)、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)