因爲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