Android数组使用ListView onItemClick内的if语句检查值

时间:2019-03-21 22:37:27

标签: java android arrays

我的数组中有一些值,我想使用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
}

1 个答案:

答案 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
        }  
}