title: While loop terminates without changing the condition's value
body: <p>I'm using this code:</p>
  
  <pre><code>    public void menu() {
          boolean finish = false;
          while (!finish) {
              // print menu
              int n = // acquire selection through other method of the program
              switch (n) {
                  case 0:
                      finish = true;
                      break;
                  case 1:
                      // do stuff 1
                      break;
                  case 2:
                      // do stuff 2
                      break;
                  case 3:
                      // do stuff 3
                      break;
                  case 4:
                      // do stuff 4
                      break;
              }
          }
  
      }
  </code></pre>
  
  <p>I tried putting <code>finish = true;</code> right before all the <code>break;</code> but the while loop keeps terminating.
  The <code>finish</code> variable is NOT used anywhere else.</p>
  
  <p>I need this to not terminate until <code>n == 0</code></p>