Java 静态变量的序列化问题

标签 java serialization arraylist static

我有一个静态数组列表,因为我需要从其他类访问此数组列表,但是由于这是静态的,我无法使用对象序列化。任何人都可以推荐一种序列化或修改我的数组列表的替代方案,以便我可以在其他类中使用它吗?

谢谢

最佳答案

我面临同样的问题,首先,如果您使用 arraylist 的自定义模型类,使该自定义类 parcable ,您可以看到下面的链接来制作自定义类 parcable

1. how to make a model class parcable

2. doc parcable help

在使模型类可打包后,将此类的对象与 bundle 一起使用,然后将其捆绑到其他类,例如

/**
     * functionDescList is your array list of DeviceFunctionModel class type
     *
     */

    Intent intent=new Intent(mContext,DeviceOptions.class);
    Bundle bundle= new Bundle();
    bundle.putParcelableArrayList("DeviceFunctionModel", functionDescList);
    intent.putExtras(bundle);
    mContext.startActivity(intent);

    //in calling class just get the parcelable arraylist
    Bundle bundle=getIntent().getExtras();
    ArrayList<DeviceFunctionModel>functionDescList=bundle.getParcelableArrayList("DeviceFunctionModel");

第二个选项只是让模型类实现 Serializable 并将其与带有 SerialaizableArraylist 的 bundle 一起发送,然后进入调用类

但我更喜欢第一个选项,因为它速度快并且在 Android 中推荐

关于Java 静态变量的序列化问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36331502/

相关文章:

design-patterns - 使用 protobuf 进行部分反序列化

c# - 在 c#.net 中通过套接字序列化和反序列化多个对象

java - 如何通过java从mediastore中获取不同的元素

Java:列表的字符串格式

java - 作为Java中的方法参数,问号允许你在Class<?>中做什么

java - 如何将 HSSFWorkbook 对象转换为 XSSFWorkbook?

java - Java构建工具

java - 如何发送/接收日期对象以 JSON 格式而不是时间戳格式?

java - Java ArrayList 的时间复杂度

java - 无法正确排序我的数组列表