android、Java下判斷兩個String是否相等 、EditText輸入是否爲空,限定輸入數字的實現

    str1.equals(str2)來判斷,不能用==或者!=來判斷,原因:

因爲String是引用類型的,不是基本數據類型,所以它們的比較是使用地址和值(相當於C中的指針)來比較的,因爲它們是不同的對象,有不同的地址,所以str1!=str2永遠都是true。而str1==str2永遠是false。如果你中想比較它們的數值是否相等就使用str1.equals(str2)。使用==或者!=是對象的比較,它們爲真的條件是:不僅要求是同一對象,而值也要求相等。  

       因此判斷editText輸入是否爲空,可以這樣來:

if("".equals(editText.getText().toString().trim()))
上面這行代碼的意思是:
""代表空,什麼都沒輸入。
equals的意思是""跟equals後面括弧裏的東西進行對比,如果一樣就爲空。括弧裏的就是實際輸入的東西
editText.getText()就是取得裏面的東西。toString()轉化爲字符串。trim()的意思是,拿到裏面的東西后,把前後的空格都過濾掉。

     直接在xml裏設置editText的輸入限制爲:數字  這樣程序就不用判斷了,要麼什麼都沒有,要麼就是數字。
android:inputType="number"

       edittext的屬性裏,還可以限制最多可以輸入的字符個數,即length。
android:maxLength="3"

    一個綜合的下例子:

    if("".equals(et.getText().toString()))
              {
                          new AlertDialog.Builder(this)  

                          .setMessage("身高不能爲空")  

                          .setPositiveButton("Ok", null)  

                          .show();
                          return;
              }

   還可以這樣來判斷是否輸入爲空:

mEditText.getText().length()== 0
mEditText.getText().toString() == null  
mEditText.getText().toString().equals("")

轉載:http://blog.csdn.net/yanzi1225627/article/details/7805279

發佈了17 篇原創文章 · 獲贊 2 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章