有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java从列表中获取连续对

我正在重构一些代码,其中一部分看起来像这样-

    public void addElementPairsToConfig(final Config config, final Element element1, final Element element2, final Element...elements) throws Exception {  
        config.addDependency(element1, element2);
        Element currentElement = element2;
        for (int i = 0; i < elements.length; i++) {
        config.addDependency(currentElement, elements[i]);
        currentElement = elements[i];
        }   
    }

下面是我认为它实际上应该是什么样子-

    public void addElementPairsToConfig(final Config config, final Element...elements) throws Exception {        
        for (Pair<Element, Element> pair : elements.getNextPair()) {
        config.addDependency(pair.getFirst(), pair.getLast());
        }   
    }  

我知道Apache Commons有一个Pair类,我会使用它,但找不到一个List-util方法来实现这个功能,是否存在一个这样的方法。我不介意自己写一个,但我不想重新发明轮子,使用来自Apache CommonsGuava的东西(如果有的话)

在ruby世界中,我会使用类似slice的东西


共 (1) 个答案

  1. # 1 楼答案

    您对方法签名的更改非常好。然而,您对方法实现的想法过于设计。我建议保持简单:

    public void addElementPairsToConfig(final Config config, final Element...elements) throws Exception {        
        for (int i = 1; i < elements.length; i++) {
            config.addDependency(elements[i-1], elements[i]);
        }
    }