title: How does Java's switch work under the hood?
body: <p>How does Java's switch statement work under the hood? How does it compare the value of the variable being used, to those given in the case parts? Does it use <code>==</code> or <code>.equals()</code>, or is it something else entirely?</p>
  
  <p>I'm mainly interested in the pre 1.7 versions.</p>