Bon, suis pas débutant ^^
Je sais comment on compare une chaîne de caractères (ou tout du moins, les bases). Visiblement, j'ai du loupé quelques subtilités Java.

Soit le bout de code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
String packageName = getSyntaxPackageName();
URL url = Schema.class.getResource(
		"/" + packageName.replace( '.', '/' ) );
 
if( url==null )
	return null;
 
String protocole = url.getProtocol().trim().toLowerCase();
System.out.println( protocole );
 
if( protocole.equals( "jar" ) ) { ... }
Quelqu'un pourrait-il m'expliquer pourquoi d'une machine à une autre, je ne rentre pas dans mon if ? J'ai fait tous les tests possibles que je connaisse, au boulot et sur mon fixe, JDK 1.5_06 ja comparaison est OK. Sur mon portable, JDK 1.5_03 et JDK1.5_07 la comparaison ne se fait pas, le equals retourne false. Pourtant, mes deux chaînes sont identiques !!!

Il y aurait-il une histoire d'encodage de caractères là-dessous ?