Conseil test avant insertion JAVA

jean -  
irmeche Messages postés 76 Statut Membre -
Bonjour,

je fais une formulaire en java, seulement je voudrais verifier avant l'insertion qu'une date n'est pas deja prise mais je ne rentre jamais dans le if:


						System.out.println(date);
						System.out.println(rsRecupDate.getString("dateJour"));
						if (date == rsRecupDate.getString("dateJour")){
							System.out.println("test");
						}


Mes deux sysout me donne le même résultat mais je ne rentre pas dans le if pour autant, je ne comprend pas pourquoi, ce n'est pas la première fois que ça me le fait, j'ai toujours trouvé un moyen détourné pour faire mon test mais là je n'en ai pas.
Pour info, date est de type String, j'ai essayer au format date sans plus de resultats...

Auriez vous une solution?
Merci!

A voir également:

2 réponses

BadGuitarist Messages postés 373 Statut Membre 27
 
Bonsoir Jean,

Pour comparer 2 chaînes de type String, tu ne peux pas utiliser l'opérateur == en Java.
String est une classe et donc tu dois utiliser les méthodes de cette classe.
Ainsi, la comparaison de 2 objets String se fait à l'aide de la méthode equals() :


  if (date.equals(rsRecupDate.getString("dateJour")))
  {
     System.out.println("test");
  }


L'opérateur == ne servir à comparer que des types simples : int (mais pas Integer car Integer est une classe), long, ...

0
irmeche Messages postés 76 Statut Membre 17
 
bien évidement le == ne fonctionne pas pour les String mais il faut utiliser la fonction equals()
0