Bonjour!

Dans la cadre de mon programme, je me retrouve avec 4 catégories. A un moment du programme, je compare ces catégories, recueillies dans un fichier, à l'aide d'un if et visiblement, il n'arrive pas à faire la comparaison car je ne rentre jamais dans le if.

Voilà la méthode avec laquelle je stock la String (c'est "classe")

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
public static double[][] creerMatrice(String[] donnees_string, String[] classe) {
		double matDonnees[][]=new double [nbreElem][2];
		
		for(int i=0;i<donnees_string.length;i++)
		{
			String input = donnees_string[i];
			Scanner s = new Scanner(input).useDelimiter(";");
		    int k=0;
		    matDonnees[i][k]=s.nextDouble();
		    k++;
		    matDonnees[i][k]=s.nextDouble();
		    classe[i]=s.next();
		    if(i<donnees_string.length)
		    {
		    	s.close();
		    }
		}
	    

		return matDonnees;
	}
String[] donnees_string a cette forme : 0;0;Arr^t


et voici la comparaison que je fais :

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
 
                        if(matClasse[lgn]=="Arr^t")
			{
				System.out.println("ouais");
				arret=arret+distance;
			}
			if(matClasse[lgn]=="Mont,e en vitesse")
			{
				montee=montee+distance;
			}
			if(matClasse[lgn]=="vitesse nominale")
			{
				vitnom=vitnom+distance;
			}
			if(matClasse[lgn]=="ralentissement")
			{
				ralent=ralent+distance;
			}
Quand je fais un System.out.println(matClasse[lgn]) j'obtiens bien Arr^t par exemple pourtant il ne rentre pas dans le if.

(quelle que soit le string, j'ai même remplacé les string par "stop" etc mais sans succès)



Est-ce que quelqu'un aurait une idée des raisons

Merci d'avance