繁体   English   中英

如何在ArrayList中传递可序列化的对象

[英]How pass a serializable object inside a ArrayList

我有一个名为MyClass的类,该类使用其字符串,int,setters,getters方法实现Serializable,Cloneable。 现在,在另一个类中,我有这两种方法,它们分别可以正常工作。

1)

public void myStatus(final MyClass a, final boolean b) {
.
.
.
}

2)

public void secondStatust(final ArrayList<MyClass> as, final boolean b) {
.
.
.
}

我想做的是在方法1中调用方法2,如下所示:

public void myStatus(final MyClass a, final boolean b) {

        secondStatust(a, b);
}

但是我做不到,因为第二种方法正在等待ArrayLis。

一些建议?

提前致谢

你可以这样做

public void myStatus(final MyClass a, final boolean b) {
    ArrayList<MyClass> arraylist = new ArrayList<MyClass>();
    arraylist.add(a);
    secondStatust(arraylist, b);
}

将'a'对象放入arraylist对象,并将其传递给secondStatust

您也可以使用双花括号初始化 ,但要注意缺点

 public void myStatus(final String a, final boolean b) {
    secondStatust(new ArrayList<String>() {{ add(a); }}, b);
 }

缺点包括:

  • 可读性差
  • 创建新的(匿名)类型
  • 内存泄漏的风险

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM