つーか、Javaの場合はswitchよりもオブジェクト配列使ったほうが速いなんて当然だろ。

1. switchでシーケンシャルに比較を繰り返す
2. オブジェクト配列で定数時間でメソッドを叩く

case数が大きくなれば、いつかオブジェクト配列のほうが速くなるのが当然。
アルゴリズムの基礎だぞ。
もっとも、Cなどではコンパイラが最適化がんがればswitchも単純な線型探索じゃなくなるがな。
でもJavaでその最適化は無理。