如何比较 String 与 List<Object> ArrayList?

How to compare a String with List<Object> ArrayList?

我正在使用 DataSet 获取和设置值。现在我需要实现 SearchView 进行过滤。 SearchQuery 的传递方式类似于 "abcd"。但是我如何将 "abcd" String 与数据进行比较在 List DataSet 中。我试图通过使用 contains & equals 来获取它。但是没用。

private void SEARCH_QUERY(String strSearch) {

    String NEWTEXT = strSearch.trim();

    if (RestaurantDataSet.equals(NEWTEXT)) {

        RestaurantDataSet = new ArrayList<>();

        for (int i = 0; i < RestaurantDataSet.size(); i++) {

            String PRODUCTID = String.valueOf(RestaurantDataSet.get(i).getIG_PRODUCTID());
            String PRODUCTNAME = RestaurantDataSet.get(i).getIG_PRODUCTNAME();
            String CATEGORY_NAME = RestaurantDataSet.get(i).getIG_CATEGORYNAME();
            String CAT_ID = RestaurantDataSet.get(i).getIG_CATEGORY_ID();
            String IMG_ID = String.valueOf(RestaurantDataSet.get(i).getIG_IMAGEURL());
            int LIKE = RestaurantDataSet.get(i).getIG_LIKECOUNT();
            String PRICE = RestaurantDataSet.get(i).getIG_SALES_PRICE();
            String VOUCHER_ID = RestaurantDataSet.get(i).getIG_VOUCHER_ID();

            Restaurant_Beam item = new Restaurant_Beam();

            item.setIG_LIKECOUNT(LIKE);
            item.setIG_PRODUCTID(PRODUCTID);
            item.setIG_SALES_PRICE(PRICE);
            item.setIG_VOUCHER_ID(VOUCHER_ID);
            item.setIG_CATEGORY_ID(CAT_ID);
            item.setIG_IMAGEURL(IMG_ID);
            item.setIG_PRODUCTNAME(PRODUCTNAME);
            item.setIG_CATEGORYNAME(CATEGORY_NAME);

            RestaurantDataSet.add(item);
        }

        adapter = new CardAdapter(RestaurantDataSet, context);
        recyclerView.setAdapter(adapter);
        adapter.notifyDataSetChanged();
    }
}

此处提供了在您的应用中获取搜索操作的完整解决方案。 为搜索提供了逐步实施,如果您仍然需要任何说明,可以询问。请检查

Recyclerview 基本上是列表视图的高级版本。它具有 ListView 的所有功能,而且在大数据集方面比 ListView 更灵活。在 RecyclerView 中添加搜索功能可以让用户能够 search/filter 从大量数据集合中选择关键字,而无需滚动列表直到找到所需的实体。