作者evo1994 (Evo)
看板AndroidDev
標題[問題] 如何解決!=null
時間Thu Mar 8 22:31:07 2018
手機排版請見諒!
小弟最近在做三方支付串接,
在每個交易我都統一用一個物件去接,
再傳到另外一個Activity再去做顯示,
但是不同的交易,物件的某些值會是空值
變得要寫成
if( transData.xxx!=null){
textview.append(transData.xxx)
}
類似這樣的代碼,這樣寫是沒問題
但是如果每個顯示都要這樣寫會看起來非常雜亂
不知道各位大大有沒有更簡潔或更好的作法?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.14.227.221
※ 文章網址: https://webptt.com/m.aspx?n=bbs/AndroidDev/M.1520519469.A.8BC.html
※ 編輯: evo1994 (101.14.227.221), 03/08/2018 22:32:17
1F:→ ae86357961: 建構物件時判斷是否為null,若為null則給預設值 03/08 23:48
2F:→ ordous: textview.append(data!=null ? data : ""); 03/08 23:52
3F:推 t52101t: 物件內寫getter,在getter內做判斷? 03/09 00:27
4F:→ y3k: 要看對你的系統 null的意義是什麼阿 03/09 01:17
5F:→ evo1994: 可是畫面顯示空字串沒意義... 03/09 12:40
6F:→ y3k: 最快的做法是你開一個新class extend TextView 03/09 19:45
7F:→ y3k: 然後override .append()判斷是null的話就給自己想給的字串XD 03/09 19:46
8F:→ kobe8112: 或是把樓上y大建議的方式改成寫在你這個transData中 03/09 23:30
9F:→ evo1994: 了解了 非常感謝 趕緊來試試 03/10 00:25
10F:→ ggBird: null object pattern 03/10 08:06
11F:推 baobomb: 改用kotlin 會乾淨很多 03/30 10:31