Je suis encore très jeune avec Java et j'ai du mal à comprendre pourquoi mon code retourne "false" quand modulo n'est pas égal à 0, ignorant les deux autres cas, donc quand divisor vaut 0 et quand le tableau est vide.OR logique en Java ne fonctionne pas?
En cas de Diviseur = 0, je reçois java.lang.ArithmeticException
: division par zéro Pour une raison quelconque tableau vide est divisible par 0, comment cela pourrait être?
Toute aide très appréciée, merci!
public boolean Divisible(ArrayList<Integer> array1, int divisor) {
int i;
int modulo;
boolean isDiv=true;
for(i=0; i<arr.size(); i++){
modulo=((arr.get(i)%divisor));
i++;
if(modulo!=0 || divisor==0 || arr.isEmpty())
{
isDiv= false;
break;
}
}
return isDiv;
}
Il est impossible de diviser par 0 ... Et exécuter quelque chose avec des paramètres donnés et ** ensuite ** vérifier si elles sont correctes est en quelque sorte ... inutile, n'est-ce pas? – Seth
Quel est le but de la vérification 'arr.isEmpty()'? Si vous avez entré 'for', le tableau n'est pas vide. –
Si la liste est vide, le code de la boucle for ne sera jamais exécuté. – matt