【发布时间】:2019-08-19 09:57:40
【问题描述】:
我想在我的多个数组中创建一个条件以获取仅包含“已交付”的数组列表。有人可以帮我解决这个问题吗?
我已经尝试过 "myOrderItemModelList.contains("Delivered")" 但我总是得到空白结果。
List<MyOrderItemModel> myOrderItemModelList = new ArrayList<>();
myOrderItemModelList.add(new MyOrderItemModel(R.drawable.tide_prod, 2, "Tide Detergent", "149.50", "Ren's Grocery", "Juan Dela cruz", "Order_Received", 4, 3));
myOrderItemModelList.add(new MyOrderItemModel(R.drawable.tide_prod, 2, "Tide Detergent", "149.75", "Ren's Grocery", "Juan Dela cruz", "On_Process", 0, 5));
myOrderItemModelList.add(new MyOrderItemModel(R.drawable.tide_prod, 3, "Tide Detergent", "50", "Ren's Grocery", "Juan Dela cruz", "Order_Processed", 1, 0));
myOrderItemModelList.add(new MyOrderItemModel(R.drawable.tide_prod, 1, "Tide Detergent", "70", "Ren's Grocery", "Juan Dela cruz", "On_Delivery", 1, 1));
myOrderItemModelList.add(new MyOrderItemModel(R.drawable.tide_prod, 5, "Tide Detergent", "30", "Ren's Grocery", "Juan Dela cruz", "Delivered", 3, 2));
myOrderItemModelList.add(new MyOrderItemModel(R.drawable.tide_prod, 6, "Tide Detergent", "56", "Ren's Grocery", "Juan Dela cruz", "Delivered", 2, 4));
myOrderItemModelList.add(new MyOrderItemModel(R.drawable.tide_prod, 1, "Tide Detergent", "75", "Ren's Grocery", "Juan Dela cruz", "Cancelled", 5, 2));
if (myOrderItemModelList.contains("Delivered")) {
MyOrderItemOnProcessAdapter myOrderItemOnProcessAdapter = new MyOrderItemOnProcessAdapter(myOrderItemModelList);
my_orders_recyclerview.setAdapter(myOrderItemOnProcessAdapter);
myOrderItemOnProcessAdapter.notifyDataSetChanged();
}
【问题讨论】:
-
在 MyOrderItemModel 模型类中生成
equals方法,它将解决您的问题。 -
似乎 MyOrderItemModel 是一个 java bean 对象?如果是这样,Jaymin 是对的,你应该在你的 bean 中实现一个 equals 方法。
标签: java android list android-studio arraylist