[問題] 如何解決!=null

作者: evo1994 (Evo)   2018-03-08 22:31:07
手機排版請見諒!
小弟最近在做三方支付串接,
在每個交易我都統一用一個物件去接,
再傳到另外一個Activity再去做顯示,
但是不同的交易,物件的某些值會是空值
變得要寫成
if( transData.xxx!=null){
textview.append(transData.xxx)
}
類似這樣的代碼,這樣寫是沒問題
但是如果每個顯示都要這樣寫會看起來非常雜亂
不知道各位大大有沒有更簡潔或更好的作法?
作者: ae86357961 (Jasper.Yang)   2018-03-08 23:48:00
建構物件時判斷是否為null,若為null則給預設值
作者: ordous (大根)   2018-03-08 23:52:00
textview.append(data!=null ? data : "");
作者: t52101t (五子棋)   2018-03-09 00:27:00
物件內寫getter,在getter內做判斷?
作者: y3k (激流を制するは静水)   2018-03-09 01:17:00
要看對你的系統 null的意義是什麼阿
作者: evo1994 (Evo)   2018-03-09 12:40:00
可是畫面顯示空字串沒意義...
作者: y3k (激流を制するは静水)   2018-03-09 19:45:00
最快的做法是你開一個新class extend TextView然後override .append()判斷是null的話就給自己想給的字串XD
作者: kobe8112 (小B)   2018-03-09 23:30:00
或是把樓上y大建議的方式改成寫在你這個transData中
作者: evo1994 (Evo)   2018-03-10 00:25:00
了解了 非常感謝 趕緊來試試
作者: ggBird (ggBird)   2018-03-10 08:06:00
null object pattern
作者: baobomb (baobomb)   2018-03-30 10:31:00
改用kotlin 會乾淨很多

Links booklink

Contact Us: admin [ a t ] ucptt.com