<分区>
我已经尝试了所有方法,但我就是不明白为什么会遇到这个问题。这是我正在使用的代码:
for( int i=0; i< objarray.size();i++)
{
//Toast shows values
Toast.makeText(getApplicationContext(), goingToId+""+objarray.get(i).getid(),Toast.LENGTH_SHORT).show();
if (goingToId == objarray.get(i).getid())
{
//This Toast NEVER shows
Toast.makeText(getApplicationContext(), "Inside the if statement",Toast.LENGTH_SHORT).show();
glat = objarray.get(i).getlat();
glon = objarray.get(i).getlon();
loc = new Location("dummyprovider");
loc.setLatitude(glat);
loc.setLongitude(glon);
}
}
被比较的两个值都是字符串。在 for 循环中,这两个值在 toasts 中输出,我可以清楚地看到这两个值何时相同,但是 for 循环总是在没有进入 IF 语句的情况下完成,或者 IF 语句永远不会满足其条件,但我不不知道为什么。
我一直在用 C# 做这种事情,而且它总是有效,有人能看出为什么这在 Android 中不起作用吗?我知道我的帖子中没有太多信息可以继续,但是当我说它们的值在遍历 for 循环时最终匹配时,您可以相信我。任何建议将不胜感激,因为我一无所知。