如何检查自定义数组中是否存在字符串?

时间:2015-06-11 10:59:04

标签: java android arrays

我有一个private SearchAutoSuggestResult[] mArrSearchAutoSuggest;的数组 Cusom类在哪里

 public class SearchAutoSuggestResult
{
    private String did;

    private String Res;

    public String getDid ()
    {
        return did;
    }

    public void setDid (String did)
    {
        this.did = did;
    }

    public String getRes ()
    {
        return Res;
    }

    public void setRes (String Res)
    {
        this.Res = Res;
    }
    @Override
    public String toString()
    {
        return "ClassPojo [did = "+did+", Res = "+Res+"]";
    }

}

我如何检查String Res让我们说"你好"存在于阵列中以及在什么位置。

3 个答案:

答案 0 :(得分:1)

首先,将您的数组转换为arraylist,然后检查该arraylist中是否存在预期的字符串,如下所示:

    public boolean isKeyExists(String array[], String key) {
    List<String> myList = new ArrayList<String>(Arrays.asList(array));
    return myList.contains(key);
}

答案 1 :(得分:1)

您需要循环遍历数组:

for(int i = 0; i < mArrSearchAutoSuggest.length; i++) {
  SearchAutoSuggestResult result = mArrSearchAutoSuggest[i];
  String res = result.getRes();
  if(res != null && res.equals("Hello") { //means the result exists ans its value is "Hello"
    System.out.print(res);
    System.out.println(i); //prints the position of result  in the array
  }
}

答案 2 :(得分:0)

您可以使用Arrays类来搜索数组中是否存在元素。

Arrays.binarySearch(array[],key);

如果存在则返回给定数组中给定键的索引,否则返回-1。 确保您的bean已实现hashcode()equals()方法。