What can you switch on?

For future reference!

Taken from the Java Language Specification..
switch (expression) {
    case constant1: code block
    case constant2: code block
    default: code block
}
 
- Every case constant expression must be assignable to the type of the switch expression!

So will the following compile?
public class Foo {    
 
    public static void main(String[] args) {
        new Foo().doSwitch(99);
    }
 
    void doSwitch(final int foo) {
 
        final byte myByte = -1;
        final char myChar = 'c';
 
        switch (foo) {
            case myByte:
                System.out.println("myByte!");
                break;
            case myChar:
                System.out.println("myChar!");
                break;
        }
    }
}

Answer? Yes, why not..