次の2つの方法があります。
public static int useSwitch(int i) {
switch (i) {
case 0:
return 1;
default:
return 0;
}
}
public static int useIf(int i) {
if (i == 0)
return 1;
return 0;
}
テストでは、バージョンswitch
よりもわずかに高速に実行されることが示されています(私のマシンでは、呼び出しごとに1.4ナノ秒) 。if
私はいつも、スイッチのメリットは、少なくともいくつかifs
回避できるようになるまでは効果がないと信じていました。
なぜswitch
単一よりも速いのif
ですか?