J'ai essayé de chercher sur Google, mais sans succès.
J'ai un très gros interrupteur, et certaines affaires sont évidemment plus courante que d'autres.
Je voudrais donc savoir si l'ordre est vraiment maintenu tel quel et si les cas "supérieurs" sont testés avant les cas "inférieurs", donc évalués plus rapidement.
J'aimerais garder ma commande, mais si cela nuit à la rapidité, alors réorganiser les branches serait une bonne idée.
A titre d'exemple :
switch (mark) {
case Ion.NULL:
return null;
case Ion.BOOLEAN:
return readBoolean();
case Ion.BYTE:
return readByte();
case Ion.CHAR:
return readChar();
case Ion.SHORT:
return readShort();
case Ion.INT:
return readInt();
case Ion.LONG:
return readLong();
case Ion.FLOAT:
return readFloat();
case Ion.DOUBLE:
return readDouble();
case Ion.STRING:
return readString();
case Ion.BOOLEAN_ARRAY:
return readBooleans();
case Ion.BYTE_ARRAY:
return readBytes();
case Ion.CHAR_ARRAY:
return readChars();
case Ion.SHORT_ARRAY:
return readShorts();
case Ion.INT_ARRAY:
return readInts();
case Ion.LONG_ARRAY:
return readLongs();
case Ion.FLOAT_ARRAY:
return readFloats();
case Ion.DOUBLE_ARRAY:
return readDoubles();
case Ion.STRING_ARRAY:
return readStrings();
default:
throw new CorruptedDataException("Invalid mark: " + mark);
}