Si c'est vraiment un tableau, vous voulez:
if (list[0] == list[2] && list[1] == list[3])
Notez que si le tableau est de types de référence, c'est par comparaient l'identité de référence plutôt que pour l'égalité. Vous pourriez vouloir:
if (list[0].equals(list[2])) && list[1].equals(list[3]))
Bien que cela va alors bang si l'une des valeurs est nulle. Vous voudrez peut-être une méthode d'aide pour faire face à ceci:
public static objectsEqual(Object o1, Object o2)
{
if (o1 == o2)
{
return true;
}
if (o1 == null || o2 == null)
{
return false;
}
return o1.equals(o2);
}
Puis:
if (objectsEqual(list[0], list[2]) && objectsEqual(list[1], list[3]))
Si vous avez vraiment un ArrayList
au lieu d'un tableau, alors tous ce qui précède tient toujours, à l'aide list.get(x)
au lieu de list[x]
dans chaque endroit.
« il ne marche pas semble fonctionner » est pas un rapport de problème très bon :-) Vous devez donner plus de détails - que fait-il? Est-ce qu'il compile même? Est-ce que ça n'imprime pas "égal"? Etc, etc. – paxdiablo
Gardez à l'esprit que == est différent de égal à (Objet) –