我的数组中有一些值,我想使用if语句检查它们的值是否正确,以用于其新活动。
注意:我不需要使用职位
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
String[] products= {"Acer", "HP", "Lenova"};
if (products.toString().equals("HP")) {
startActivity(new Intent(this, hpcomputer.class));
} //Others Conditions
}
答案 0 :(得分:0)
如果要将数组值与字符串进行比较,可以使用for循环一一检查数组值:
String[] products= {"Acer", "HP", "Lenova"};
for(String s : products){
if(s.equals("HP")){
startActivity(new Intent(this, hpcomputer.class));
}
}
请注意,您正在整个阵列上使用products.toString()
,因此它看起来像这样:
["Acer", "HP", "Lenova"]
现在,每次使用entireString.equal("just part of the string")
方法时,结果都将返回false,因为整个字符串包含更多字符,并且永远不会等于字符串的一部分。
编辑-看到您的最后一条评论后,只需检查所单击的项目是否为“ HP”会容易得多:
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
String[] products= {"Acer", "HP", "Lenova"};
if(position == 1){
//"HP" got clicked
}else if(position == 2){
//"Lenova" got clicked
}else{
//"Acer" got clicked
}
}