有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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

我有一个数组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+"]";
    }

}

如何检查字符串Res让我们说“Hello”是否存在于数组中以及在什么位置


共 (3) 个答案

  1. # 1 楼答案

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

    Arrays.binarySearch(array[],key);
    

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

  2. # 2 楼答案

    您需要在阵列中循环:

    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
      }
    }
    
  3. # 3 楼答案

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

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