| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5854 人关注过本帖
标题:请问TextField.getText()的默认值是什么?
只看楼主 加入收藏
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
结帖率:100%
收藏
 问题点数:0 回复次数:2 
请问TextField.getText()的默认值是什么?
查看API.上面说:
返回此文本组件表示的文本。默认情况下,此文本是一个空字符串。

但是,通过调试的查看变量表达式,发现TextField.getText()的值并不是 null
而显示的是
"TextField.getText()" = ""
我不明白,上面这个代表什么意思...

如果有
String s;
TextField tf = new TextField(30);
查看变量,发现
s = null

null 和 ""
什么不一样.

if(s == null)------true
if(tf.getText() == null)-----false
if(tf.getText() == "")-----false


当按下监听按钮时,我应该如何判断TextField中是否有东西输入.

谢谢啦~~~

刚才找一下以前的帖子.
getText().trim().equals("")
就可以判断了.

谢谢
liyongjun

[[it] 本帖最后由 meteor57 于 2008-7-19 00:49 编辑 [/it]]

[[it] 本帖最后由 meteor57 于 2008-7-19 01:08 编辑 [/it]]
搜索更多相关主题的帖子: TextField getText 变量 null 文本 
2008-07-19 00:46
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
收藏
得分:0 
返回此文本组件表示的文本。默认情况下,此文本是一个空字符串。
空字符串就是“”,里面什么都没有。
null是对象为空。

String s;               //这时s并没有申请到任何内存,为null
String s = "";          //这时,s对应了一块内存,其值是空
String s = "abc";       //这时是与case2一样的,只是值不为空

要判断文本框是否为空,不能用==,java中==是用于比较对象引用的而不是内容。
要比较内容,要用equals,类库中对象的equals方法一般是重写了Object用于比较内容比如String,但是如果是自定义对象就需要自己手动重写。
getText().trim().equals("");
这是正确了,其实用getText().equals("")就可以,不过加上.trim()就更完美,trim的作用是去掉String对象的前导空字符和后导空字符返回。

Fight  to win  or  die...
2008-07-19 18:43
meteor57
Rank: 1
来 自:银河系
等 级:新手上路
帖 子:267
专家分:0
注 册:2007-9-29
收藏
得分:0 
太谢谢LS了...
==用于比较引用对象.
equals用于比较内容.
现在明白了.
thanks again.
2008-07-21 22:19
快速回复:请问TextField.getText()的默认值是什么?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.043780 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved