編輯:Android開發教程
今天寫了一個簡單的記憶便箋小程序,但是卻發現在判斷添加數據不能為空的時候,自己的代碼總是不起作用。
String titleStr = addtitle()() String contentStr = addcontent()() if (titleStr == null && contentStr == null) { Toast(this, , Toast_SHORT)() } else if (titleStr == null) { Toast(this, , Toast_SHORT)() } else { DataUtils(titleStr, contentStr, this) Toast(this, , Toast_SHORT)() }
不行~~~
改進後:
if (titleStr == && contentStr == ) { Toast(this, , Toast_SHORT)() } else if (titleStr == ) { Toast(this, , Toast_SHORT)() } else { DataUtils(titleStr, contentStr, this) Toast(this, , Toast_SHORT)() }
依然不行
上網搜集了一些資料,原來不止我遇到了這個問題呀~~~~解決方法粘貼如下:
在android中 TextUtils.isEmpty()和equals()方法的用法
對於一個UI界面中,當判斷用戶是否輸入用戶名或密碼時,我們常用TextUtils.isEmpty()方法來判斷;但有時也可以用這個equals()方法,都可以來判斷EditText中是否為空,但有時很糾結,不知道這兩種方法中哪個比較好?為什麼?請哪位知道的大俠詳細幫助解答一下,菜鳥成分感謝!
仔細讀官方的API: Returns true if the string is null or 0-length. 意思好像就是看參數是否為空或0長度。因為你從EditText返回的是一個變量。如果這個變量本身為null值,那麼你掉它的equals方法是要報錯的。但是如果你調用TextUtils.isEmpty() 把這個變量作為參數傳進去。只要這個參數為空或者為“”,都會返回真。所以,用官方給的更加嚴謹。而且。也十分方便。因為你單獨去判斷你還不是要寫一個if語句判斷。返回的還是一個boolean值,為何別人鋪好的路不走呢?
TextUtils.isEmpty(str)與str.isEmpty()有區別嗎?哪個更好?請寫出原因
就返回結果的情況來看,有一個區別,就是當 str 是空(null)或空串(”“)時 TextUtils.isEmpty(str) 返回 true,否則返回 false。而當空(null)時 str.isEmpty() 會空指針異常。
就效率上來看, str.isEmpty() 要比 TextUtils.isEmpty() 快,因為如果看官方源碼的話可以發現 TextUtils.isEmpty() 判斷了兩步,先判斷 == null,再判斷 .length == 0。而前者只判斷 .length == 0。
從結構上上看,TextUtils.isEmpty(str) 是一個靜態方法,而 str.isEmpty() 是 String 類的對象所擁有的方法。
感恩:
TextUtils類的常用方法isEmpty與equals
http://www.eoeandroid.com/thread-323960-1-1.html
_____________________________對不起,請原諒我,謝謝你,我愛你
URL:http://www.bianceng.cn/OS/extra/201608/50400.htm
這個例子需要Android系統中安裝了支持RecognizerIntent.ACTION_RECOGNIZE_SPEECH的應用,比如Google的 Voice Sear
在Android3.0之後,google創造了Fragment,因此原來的Tabhost已經不推薦使用了,現在一般推薦使用FragmentTabhost。google考慮
傳統界面的布局方式總是行列分明、坐落有序的,這種布局已是司空見慣,在不知不覺中大家都已經對它 產生了審美疲勞。這個時候瀑布流布局的出現,就給人帶來了耳目一新的感覺,這種布
PC上流行的播放器KMPlayer開始注重移動平台,推出了面向安卓的版本。Android版KMPlayer支持Android 4.0及以上版本,其特性包括:媒體庫功能,方