Я рефакторинг кода и часть его выглядит так -Получение последовательных пар из списка
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, который делает это, есть ли тот, который существует. Я не против писать сам, но я бы не стал изобретать велосипед и использовать что-то от Apache Commons
или Guava
, если он существует.
В мире рубинов я бы использовал что-то вроде slice.
Отлично, это намного шире! Мне не нравится повторять «я», но я думаю, что в этом случае это лучший подход. – nikhil