public static Range range(char first, Character second) {
        if (second == null) {
            return new Range(first);
        } else {
            return new Range(first, ((Character) second).charValue());
        }
    }
public static Range range ( char first , Character second ) { if ( second == null ) { return new Range ( first ) ; } else { return new Range ( first , ( ( Character ) second ) . charValue ( ) ) ; } }
second is a Character to detect optional values