安卓开发列表视图parent.getItemAtPosition(position).toString()的问题!!!快哭了!

首先,是一个列表视图,共四个选项,第一个选项是:苏州(采用的是适配器的方式做的列表视图,数组是字符数组)。当我选择苏州这个选项时会运行下面的程序。发现第一次和第二次得到的... 首先,是一个列表视图,共四个选项,第一个选项是:苏州(采用的是适配器的方式做的列表视图,数组是字符数组)。当我选择苏州这个选项时会运行下面的程序。发现第一次和第二次得到的结果都是“苏州”,但是判断他们是否相等时,却显示不相等!!!这么诡异是怎么回事!!!求大神解释————

listview1.setOnItemClickListener(new OnItemClickListener(){
@Override

public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// TODO 自动生成的方法存根
String cityname1=parent.getItemAtPosition(position).toString();
Toast.makeText(result.this,
"第一次" + cityname1,
Toast.LENGTH_SHORT).show();

String cityname="苏州";
Toast.makeText(result.this,
"第二次" + cityname,
Toast.LENGTH_SHORT).show();

if(cityname1==cityname){
Toast.makeText(result.this,
"两个变量相等",
Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(result.this,
"两个变量不相等",
Toast.LENGTH_SHORT).show();
}
}
展开
 我来答
xmcong2000
推荐于2016-06-15 · TA获得超过3471个赞
知道大有可为答主
回答量:1919
采纳率:0%
帮助的人:1299万
展开全部
注意:Java中字符串的比较是string1.equals(string2),不是==
前者比较两个字符串内容是否相同,后者比较两个字符串对象是否为同一对象。
所以(cityname1==cityname)应该改为(cityname1.equals(cityname))
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式