首页 > 解决方案 > 如何在android中构建后修复ArrayList的冗余

问题描述

我正在制作一个食品订购应用程序,但我遇到了困难。我正在调用我的类的构造函数。然后,在分配之后,this.listDataArrayList被报告为多余的。

public class CartAdapter extends RecyclerView.Adapter<CartViewHolder> {

    private List<Order> listData = new ArrayList<>();

    private Context context;

    public CartAdapter(List<Order> listData, Context context) {
        this.listData = listData;
        this.context = context;
    }
}

标签: javaandroid

解决方案


可能您的 IDE 会告诉您以下初始化是多余的,而不是字段本身。

private List<Order> listData = new ArrayList<>();

这个想法是你只有一个构造函数,并且这个构造函数总是期望 a List<Order>。这意味着每次创建类的实例时,您将能够使用您提供的唯一构造函数,其中字段listData将具有唯一构造函数的第一个参数的值,因此无需初始化那样的领域。这就是您收到“冗余初始化”警告的原因。

如果您想有一种将 初始化listData为空的方法ArrayList,那么您可以提供一个不处理该listData字段的构造函数。否则,声明private List<Order> listData;将“解决问题”。


推荐阅读