我怎样才能简化这个模块?

How can I simplify this module?

我有一些看起来很糟糕的方法(尤其是参数数量)。我想知道如何使这段代码更清晰。

该方法适用于 JLists 并设置新模型 (DefaultListModel)。所以它只是在两个 JLists 之间交换项目,并删除列表中被交换的项目。

欢迎批评指教

调用方法示例:

moveToOtherJList(newOrdersModel, newOrdersJList, inProcessOrdersModel, inProcessOrdersJList);

方法:

private void moveToOtherJList(DefaultListModel firstModel, JList firstJList, DefaultListModel secondModel,  JList secondJList)
{
    int selectedIndex = firstJList.getSelectedIndex();
    secondModel.addElement(firstJList.getSelectedValue());
    secondJList.setModel(secondModel);
    firstModel.remove(selectedIndex);
}

I have some method which looks awful(especially number of parameters).

好吧,没有必要传递任何一个 ListModel,因为您可以从 JList 中获取 ListModel。

所以我将方法定义为:

public void moveToOtherJList(JList fromJList, JList toJList)
{
    int selectedIndex = fromJList.getSelectedIndex();
    DefaultListModel fromModel = (DefaultListModel)fromJList.getModel();
    DefaultListModel toModel = (DefaultListModel)toJList.getModel();

    toModel.addElement(fromJList.getSelectedValue());
    fromModel.remove(selectedIndex);
}