Java 通过在apply上进行相应的函数调用来反映一组更改

Java 通过在apply上进行相应的函数调用来反映一组更改,java,swing,Java,Swing,我正在开发一个JavaSwing应用程序,它具有向树中添加、编辑和删除节点的功能,并且有两个控件apply和cancel 当用户在树上执行任何操作(例如,添加新节点)时,它将立即反映在UI中,但只有当用户选择应用时,才会相应地调用函数以使其持久化,否则更改将恢复到以前的稳定状态 我已经处理了应用和取消的UI部分,但是我想知道如何有效地在应用上执行一组过程调用 我考虑将过程调用作为字符串添加到arraylist中,并按顺序迭代该arraylist(因为这确保了用户操作的顺序,这是一项重要的要求),

我正在开发一个JavaSwing应用程序,它具有向树中添加、编辑和删除节点的功能,并且有两个控件apply和cancel

当用户在树上执行任何操作(例如,添加新节点)时,它将立即反映在UI中,但只有当用户选择应用时,才会相应地调用函数以使其持久化,否则更改将恢复到以前的稳定状态

我已经处理了应用和取消的UI部分,但是我想知道如何有效地在应用上执行一组过程调用

我考虑将过程调用作为字符串添加到arraylist中,并按顺序迭代该arraylist(因为这确保了用户操作的顺序,这是一项重要的要求),并将其作为java语句执行

另一种方法是使用双重映射,将用户操作序列映射到过程序列,并将过程序列映射到参数列表


但是我觉得可以有更好的方法来实现这一点,我想听听您的答案。

我认为您唯一希望将UI和过程操作映射在一起的时间是,如果您要实现“撤消”功能。否则,最简单的方法就是存储操作列表并按照您所描述的顺序执行它们

感谢您的回复,您能告诉我存储函数调用的最佳方式(格式)是什么,以便可以轻松地读取和执行它们吗。我是否应该考虑将函数调用存储为字符串,并将这些字符串作为java语句执行?(我看到有人问这个问题)。或者还有其他更好的选择吗?。