我如何在没有得到NullPointerException的情况下将Elist分为两个Elists。我已经尝试过EcoreUtil.copy()/ Collections.copy。问题似乎是,在声明复制目标列表时,需要使用= null进行初始化;我还尝试使用Iterator复制元素,并尝试将.set().add()添加到上面所有带有异常的退出中。目标List的声明似乎仅在分配中起作用。在调试时,我清楚地看到列表中复制的对象不是null。
EList<RtTask> tasks = rtModule.getTasks();
EList<RtModuleInvocation> invoc0 = null; //target List
for (RtTask rtTask : tasks) {
EList<RtModuleInvocation> invocations = rtTask.getModuleInvocations(); //src List
谢谢。
最佳答案
多亏了https://www.programcreek.com/java-api-examples/emf,我找到了使用构造函数初始化Elist的正确方法,该构造函数创建没有初始容量的空实例。数据存储将为null。和HOP的作品。
EList<RtModuleInvocation> invoc0 = new BasicEList<>();
关于java - 如何使用Eclipse EMF复制通用列表?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60318233/