`
mmdev
  • 浏览: 12944853 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

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("")



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics