是否可以创建回调函数 ArrayList 添加/删除方法。
ArrayList 将包含图像 url,我想在添加/删除新元素后立即运行我的代码(更新 UI)。
将列表封装在您自己的对象中,并在将元素添加到列表之前或之后做任何您想做的事情:
public class UrlContainer {
private List<String> urls = new ArrayList<String>();
public void add(String url) {
doSomething();
urls.add(url);
doSomethingElse();
}
...
}
你想要的是一个装饰器。你扩展了 ArrayList 但你也实现了接口,所以你基本上是伪装成一个实例,你是在增强核心行为,或者装饰它。
看看Glazed Lists。您可以创建一个 EventList 并监听添加/删除事件。
(是的,他们在内部使用代表......)