JavaのSwitch構文を高速化する方法。

Switchを使うと以下の二つの命令のどちらかがコンパイラによって生成される。


lookupswitch - switch文のcase式の値が不連続である場合値を探しながらジャンプ先を探す。

tableswitch - switch文のcase式の値が連続である場合キー値をindexとしジャンプ先アドレスを値とする配列を作り高速にジャンプする。


つまり、特に問題がないかぎり、値を連続で定義するほうが、高速化できそうだ。



全然関係ないけども、下記の書き方はコンパイル可能。

		int l = 1 ;
		    l |=l ;