¿Por qué la instrucción de cambio es más rápida que si no fuera por String en Java 7?

EnJava 7 a string objeto puede estar en la expresión de unaswitch declaración. ¿Puede alguien explicar la siguiente declaración dedocumentación oficial?

El compilador de Java generalmente genera un bytecode más eficiente a partir de sentencias de switch que usanObjetos de cuerda que a partir de enunciados if-then-else encadenados.