java textfield的getText()问题

u=db.searchPassword(lnumber,tx.getText());if(tx.getText()=="1993a")System.out.println... u=db.searchPassword(lnumber,tx.getText());
if(tx.getText()=="1993a") System.out.println("相等");
关键是if语句,我确实在文本框内输入了1993a。可是用getText()得到的字符串就是不满足条件,而且,我也试过把tx.getText()所得输出到屏幕上。结果真是蛋疼,竟然显示的是1993a。我试过把字符串转换成byte[],再用byte[]去构造一个String类型的值,这个String类型的值还是不满足if条件。
展开
 我来答
冰心的水
推荐于2017-09-18 · 超过10用户采纳过TA的回答
知道答主
回答量:67
采纳率:0%
帮助的人:51.2万
展开全部
java中String 是一个对象,tx.getText()返回值是String,是一个String 的对象,而"1993a"是一个字符串常量,所以二者根本就不会相等的。把if语句里面换成tx.getText().equals("1993a")就行了。
更多追问追答
追问
说实话,要不是searchPassword()出问题。我也不会加一个if语句。我就是想让tx.getText()作searchPassword()的参数。而且,如果我写成searchPassword(lnumber,"1993a");那么程序就会按我预期的运行。而若是我在文本框中输入1993a。用getText()得到他,用作searchPassword()的参数,就不行了。
追答
我还能看看你的searchPassword()函数啊
donggesky
2014-06-04 · 超过18用户采纳过TA的回答
知道答主
回答量:55
采纳率:0%
帮助的人:43.9万
展开全部
if(tx.getText().equals("1993a"))改成这样试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式