当前位置:编程学习 > wap >>

求教,关于setText().

调用web service返回数据并解析得到一个字符串state。
下面是代码,tv是TextView控件。

String state=qqStateService.getqqState(qq);//得到需要的结果state
//tv.setText(state);
if(state=="Y")
{
  tv.setText("在线");
}

如果照注释掉的那句,可以正常显示一个Y,但是换成下面的if语句就不能显示,咋回事? --------------------编程问答-------------------- state.trim()  去掉空格,你原来的String state可能后边有空格。
或者你可以state.equals("Y")    在IF里边这样判断。 --------------------编程问答-------------------- 字符串判断相等要使用state.equals("Y")啦 --------------------编程问答-------------------- 上面正解!!! --------------------编程问答-------------------- if(state=="Y")
修改成:
if(state != null && state.equals("Y") --------------------编程问答-------------------- equals()啊  大哥 --------------------编程问答--------------------
引用 楼主 sunhui8809075 的回复:
调用web service返回数据并解析得到一个字符串state。
下面是代码,tv是TextView控件。

String state=qqStateService.getqqState(qq);//得到需要的结果state
//tv.setText(state);
if(state=="Y")
{
  tv.setText("在线");
}

如果照注释掉的那句,可以正常显示一个Y,但是换成下面的if语句就不能显示,咋回事?


之所以不显现   是由于if语句 state=="Y"的判断条件为false  导致if语句里面的执行方法不会被执行


字符串之间的比较equals() 比较两者的值

A == B  使用一般是int、long、boolean类型    不仅仅比较A、B两者之间的值   还比较了两者的类型、哈希code值

如有不对  欢迎拍砖~
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,