I saw a java class whose int variables are assingned with values of 2's power. Is there any advantages by doing like this?
private static final int MODE_BICYCLE = 1;
private static final int MODE_WALK = 2;
private static final int MODE_CAR = 4;
private static final int MODE_BUS = 16;
private static final int MODE_TRAM = 32;
private static final int MODE_SUBWAY = 64;
private static final int MODE_RAIL = 128;
private static final int MODE_FERRY = 256;
private static final int MODE_CABLE_CAR = 512;
private static final int MODE_GONDOLA = 1024;
private static final int MODE_FUNICULAR = 2048;
private static final int MODE_TRAINISH = MODE_TRAM | MODE_RAIL | MODE_SUBWAY | MODE_FUNICULAR | MODE_GONDOLA;
private static final int MODE_BUSISH = MODE_CABLE_CAR | MODE_BUS;
private static final int MODE_TRANSIT = MODE_TRAINISH | MODE_BUSISH | MODE_FERRY;
private static final int MODE_ALL = MODE_TRANSIT | MODE_WALK | MODE_BICYCLE;
private int modes = 0;