处理将不同列表传递给方法的最佳方法是什么?

时间:2017-03-15 16:48:40

标签: java arraylist

我有一个问题,我必须修改java web上传实用程序(执行第三方Web服务)中的现有代码,并且必须使excel电子表格中的所有字段“可选”而不是强制性的混合和可选字段。上传电子表格后,会进行检查以验证上传的数据,验证完成后,会有一个类用于构建输入到输入xml的元素列表,并附加字符串数组将数据优化到这些元素。一旦构建完成,它就会被传递给webservice来执行。

下面的HandleUploadUtilVO类中的构造函数方法假定了一个预定义的元素列表:

public HandleUploadUtilVO(String[] row) throws aException {

    clearOldObjects();
    elements = new ArrayList();
    elements.add("order");
    elements.add("order_h");
    elements.add("event");
    elements.add("event_d");
    elements.add("event_d");

    recursiveAttr = populateRecursiveAttribute();

    try {
        mapElementsToAttributes(elements, row);
    } 
    catch (aException e) {
        e.printStackTrace();
        throw new aException(aException.GENERIC_IO_ERROR, e
                .getMessage());
    }
}

正如您在此构造函数方法中看到的那样,我们预先填充具有给定值的元素列表。方法mapElementsToAttributes(List elementList,String [] row)需要List的输入参数(在我们遍历预定义元素列表的方法中,检查它是否等于列表中的一个值并附加属性和值) ,以及表示excel行数据的String []。此方法检查excel数据(行)并将属性附加到元素(已在构造函数方法中预定义并用作mapElementsToAttributes方法的输入),然后获取要附加到Excel的excel数据的值元素的属性。

我的问题是可能存在没有填充字段并且不需要元素的情况(在我的情况下,它可以是一个事件元素或两者),因此需要从列表中删除元素和属性。当列表已经预先填充为mapElementsToAttributes方法的输入时,我该怎么做?它不像在执行方法之前从列表中删除那么简单。任何帮助或建议将不胜感激。

0 个答案:

没有答案