Why is this an issue?

Jump statements such as return and continue let you change the default flow of program execution, but jump statements that direct the control flow to the original direction are just a waste of keystrokes.

Noncompliant code example

public void foo() {
  while (condition1) {
    if (condition2) {
      continue; // Noncompliant
    } else {
      doTheThing();
    }
  }
  return; // Noncompliant; this is a void method
}

Compliant solution

public void foo() {
  while (condition1) {
    if (!condition2) {
      doTheThing();
    }
  }
}