社区
Java SE
帖子详情
字符串比较的问题,请大家来测试下这三题,讲讲为什么?
ynduanlian
2012-09-17 08:43:12
在Java中,在输入框中什么也不填
String strKey=editText1.getText().toString();
(strKey.trim()=="") --> false or true 为什么
(strKey=="") --->true or false 为什么
strKey.trim().equals("") -->true or false 为什么
请大家来测试下这三题,讲讲为什么?
...全文
105
4
打赏
收藏
字符串比较的问题,请大家来测试下这三题,讲讲为什么?
在Java中,在输入框中什么也不填 String strKey=editText1.getText().toString(); (strKey.trim()=="") --> false or true 为什么 (strKey=="") --->true or false 为什么 strKey.trim().equals("") -->true or false 为什么 请大家来测试下这三题,讲讲为什么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ynduanlian
2012-09-17
打赏
举报
回复
在Android 的Java虚拟机下测试结果是这样的:
(strKey.trim()=="") --> false
(strKey=="") --->true
strKey.trim().equals("") -->true
((strKey.trim())=="") -->true
(strKey.trim().toString()=="") -->true
但有人说在JDK的虚拟机下测试都是true
zpc19911204
2012-09-17
打赏
举报
回复
第一种情况:false
第二种情况:false
第三种情况:true
首先,trim()这个函数是把输入的字符串去掉最前面的空格和最后面的空格再输出。这里你只输入"",trim()函数是不发挥作用的。那第一种和第二种情况就是一样的,他们和第三种情况的区别就在于==和equals的区别。
如果不是基础数据类型,==的判断基本比较渣,它只是判断两个object的reference(差不多就是指针)是不是一样,一样就返回true,否则false。具体来说,==两边如果是指到同一个地方的话,才会是true;如果两边指到不同的地方,即使那两个地方的内容相同,也会返回false。
一般来说,想比较两个object的内容是不是一样,会用equals。equals会把内容取出来进行对比,这时候返回true就是内容一样。
具体到这个问题,strKey和""的内容是一样的,但存在不同的地方,所以==返回false,equals返回true。
ynduanlian
2012-09-17
打赏
举报
回复
那能否讲解下上面所列三种情况,会是什么结果,为什么吗?
龙泉剑
2012-09-17
打赏
举报
回复
java中字符串比较的问题,"=="比较引用,"equals"比较值,具体见:
http://blog.csdn.net/chthq/article/details/7909720
第014-15讲:字符串 (见小甲鱼新版27讲-32讲)| 课后
测试
题及答案
第027讲:字符串(I)| 课后
测试
题及答案 大小写字母换来换去 capitalize()、casefold()、title()、swapcase()、upper()、lower() 左中右对齐 center(width, fillchar=’ ‘)、ljust(width, fillchar=’ ‘)
Python字符串
测试
题01
使用Python字符串
测试
题01 如何检验自己有没有学会,一种方法是能够像老师一样讲出来;另外一种方法是在实践中检验。那么学完字符串我们做几个题练练手吧。 ** 以下是正确的字符串() A ‘abc”ab” B ‘abc”ab’...
字符串转换成整数
题目描述 输入一个由数字组成的字符串,把它转换成整数并输出。...本题考查的实际上就是字符串转换成整数的
问题
,或者说是要你自行实现atoi函数。那如何实现把表示整数的字符串正确地转换成整数呢?以"123"作为例子...
字符串全排列
问题
分析
今天晚上和一个同学讨论了下字符串全排列的
问题
,发现了一些自己没有发现过的点,感觉这个
问题
虽然简单,但是其实要写的漂亮,其实还是有一些难度,要解决整个
问题
需要经历的分析过程其实还是挺漫长的。所以就做一个...
【算法】字符串是否包含
问题
在网上看到这篇文章:一次谷歌面试趣事。...从算法是讲,什么方法能最快的查出所有小字符串里的字母在大字符串里都有? 比如,如果是下面两个字符串: String 1: ABCDEFGHLMNOPQRS String 2: DCGSRQP...
Java SE
62,614
社区成员
307,327
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章