Здесь выдержка из Учебники Sun Java:
Коммутатор работает с примитивными типами данных
byte,short,charиint. Он также работает с перечисляемыми типами (обсуждается в классах и наследовании) и несколькими специальными классами, которые "обертывают" некоторые примитивные типы:Character,byte,shortиInteger(обсуждаются в простых объектах данных).
Должна быть веская причина, по которой примитивный тип данных long недопустим. Кто-нибудь знает, что это такое?