首页 > 解决方案 > java类之间的ArrayList数据共享

问题描述

我已经从 Firebase 获取数据到 Dashboard (Fragment) Main 类,现在我需要将同一个 ArrayList 访问到另一个 Fragment 类。我如何在两个类之间共享数组列表。

我的仪表板类代码:

private void GetCategory() {


    DatabaseReference db = FirebaseDatabase.getInstance().getReference("Category");
    db.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            for (DataSnapshot userSnapshot : dataSnapshot.getChildren()) {
                Catergory_List cl = userSnapshot.getValue(Catergory_List.class);
                CatList.add(cl);

            }
        }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {
            throw databaseError.toException();
        }
    });
}

我的二等

private Dashboard db;
            TExpenses= db.TrasactionExpenses();
        System.out.println(TExpenses.size());

我尝试了这段代码,但它不起作用

  public List<Catergory_List> TrasactionExpenses() {
        return CatList;
    }

错误日志

 java.lang.NullPointerException: Attempt to invoke virtual method 'java.util.List Dashboard.TrasactionExpenses()' on a null object reference

任何帮助将不胜感激..我无法将值从仪表板类 ArrayList 获取到 B 类

标签: javaarraylistjava-8

解决方案


这很正常,你没有初始化你的 Dashboard !


推荐阅读