Bonjours, je n'arrive pas à comprendre mon erreur ... Ça doit être un problème de type de String ou je sais pas quoi !

Voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
import java.util.ArrayList;
 
public class Test {
	public static void main(String[] args){
		String msg = "joueur1|joueur2|joueur3";
		ArrayList<String> aL = new ArrayList<String>();
		aL = decoupe(msg,"|");
		int i=0;
		while (i<aL.size()){
			String pseudo=aL.get(i);
			System.out.println("Comparaison : "+pseudo+" ?= joueur2");
			if (pseudo == "joueur2")
				System.out.println("Trouvé");
			else
				System.out.println("En cour ...");
			i++;
		}
	}
 
	public static ArrayList<String> decoupe(String ligneEntree,String separateur) {
		  if (ligneEntree == null) {
			return null;
		  }
		  int index = 0;
		  ArrayList<String> lig = new ArrayList<String>();
		  String temporaire = ligneEntree;
		  if (temporaire != null) {
			index = temporaire.indexOf(separateur);
			while (index >= 0) {
				lig.add(temporaire.substring(0, index).toString());
				temporaire = temporaire.substring(index + separateur.length(), temporaire.length());
				index = temporaire.indexOf(separateur);
			}
			// Le dernier élément
			lig.add(temporaire);
		  }
		  return lig;
		}
}
Affichage de l'execution :
Comparaison : joueur1 ?= joueur2
En cour ...
Comparaison : joueur2 ?= joueur2
En cour ...
Comparaison : joueur3 ?= joueur2
En cour ...

J'ai quasiment tester toutes les méthodes de ArrayList (contain, equal, ...) mais il me dit toujours que : "joueur2" != "joueur2".
Merci de m'aider !