我的搜索代码部分:
String neededShop = "not found";
float min_price=999999;
ProductHandler ph = new ProductHandler(this);
prod=ph.getAllProducts();
for(int i = 0 ; i<prod.size(); i++)
{
if(prod.get(i).getName()==SearchProduct)
{
if(min_price>prod.get(i).getPrice())
{
min_price=prod.get(i).getPrice();
neededShop = prod.get(i).getShop();
}
}
}
在此部分:
if(prod.get(i).getName()==SearchProduct)
prod [0] name "Cat" (id=830032142800)
SearchProduct "Cat" (id=830032120832)
比较时,尽管它们相似,但返回false。有什么想法吗?
最佳答案
使用==运算符无法获得字符串比较。
您可以通过测试equals()得到比较。
尝试这个:
if(prod.get(i).getName().equals(SearchProduct))
关于android - 相似变量不相似,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21499670/