## Why is this an issue?

When a method loops multiple over the same set of data, whether it’s a list or a set of numbers, it is highly likely that the method could be made more efficient by combining the loops into a single set of iterations.

### Noncompliant code example

    public void doSomethingToAList(List<String> strings) {
      for (String str : strings) {
        doStep1(str);
      }
      for (String str : strings) {  // Noncompliant
        doStep2(str);
      }
    }

### Compliant solution

    public void doSomethingToAList(List<String> strings) {
      for (String str : strings) {
        doStep1(str);
        doStep2(str);
      }
    }