lundi 30 juillet 2018

Java evaluate if multiple boolean parameters are equal

I was implementing an N-nary tree (here N=4) and want to put in a logic to do something if the boolean property val of all four children of a node are equal, I tried with:

if (childOne.val == childTwo.val == childThree.val == childFour.val){
    doSomthing();
}

however this doesn't work for my test cases, so I have to change it to a more explicit and verbose:

if (childOne.val == childTwo.val && childTwo.val == childThree.val && childThree.val == childFour.val){
    doSomthing();
}

and this one works. However I cannot make sense why the first evaluation doesn't give me the correct answer.

Aucun commentaire:

Enregistrer un commentaire