Почему switch работает быстрее, чем if

Я нашел много книг по java, в которых говорится, что оператор switch работает быстрее, чем оператор if else. Но я не нашел ни одного места, где говорилось бы , почему switch быстрее, чем if .

Пример

У меня ситуация, я должен выбрать любой элемент из двух, я могу использовать любой из следующих способов

switch(item){

case BREAD:
     //eat Bread
break;
default:
    //leave the restaurant

}

или с помощью оператора if, подобного следующему

if(item== BREAD){
//eat Bread
}else{
//leave the restaurant
}

, учитывая, что элемент, а ХЛЕБ является постоянным значением типа int

В приведенном выше примере, какой работает быстрее и почему?

106
задан skaffman 15 July 2011 в 11:38
поделиться