private int indiceDevise;
private static int indiceDevise (String devise) {
if (! deviseTraitee(devise)) {
throw new
Error("Devise
" + devise + " inconnue");
}
return indiceDevise;
}
public static boolean deviseTraitee(String devise) {
for (indiceDevise = 0; indiceDevise <
devises.length;
indiceDevise++) {
if
(devises[indiceDevise].equals(devise))
{
break;
}
}
return indiceDevise < devises.length;
}
assert b
lève une AssertException
si b
vaut false
.
La différence avec l'utilisation directe d'une Error
est qu'une instance d'Error
n'est pas capturable et que
pour que l'assertion soit prise en compte, il faut utiliser l'option
d'exécution -ea de la machine virtuelle.equals(Object)
, toString()
et hashCode(),
héritées de java.lang.Object
.