difference entre loperateur = et ==

difference entre loperateur = et == - Java - Programmation

Marsh Posté le 20-08-2003 à 08:48:15    

en java, quel est la difference entre loperateur = et == lorsquil sont utilise sur des objets ??
 
c la meme chose??
ca implique quoi comme consequences???

Reply

Marsh Posté le 20-08-2003 à 08:48:15   

Reply

Marsh Posté le 20-08-2003 à 08:50:54    

ben = c affectation et == c comparaison. Attention cependant, comem y a pas de surcharge d'operateur en java, == se contente de vérifier si deux références pointent sur le même objet.


---------------
Le Tyran
Reply

Marsh Posté le 20-08-2003 à 09:14:03    

tu saurais me donner un exemple ???

Reply

Marsh Posté le 20-08-2003 à 09:14:29    

LetoII a écrit :

ben = c affectation et == c comparaison. Attention cependant, comem y a pas de surcharge d'operateur en java, == se contente de vérifier si deux références pointent sur le même objet.


 
mieux vaut donc utiliser la méthode equals(Object anotherObject) pour vérifier que ton objet est égal à un autre.
 
Dans ce cas, il faut bien sur redéfinir la méthode equals (héritée d'Object) sinon ca fait exactement la meme chose qu'un == (à savoir la comparaison des addesses en mémoire)


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 20-08-2003 à 11:22:28    

comment 2 objets pointant vers la meme zone pourraient etre differents???

Reply

Marsh Posté le 20-08-2003 à 11:26:20    

C plutôt pourquoi deux objets différents ne seraient-ils pas égaux?


---------------
Le Tyran
Reply

Marsh Posté le 20-08-2003 à 12:07:23    

red faction a écrit :

comment 2 objets pointant vers la meme zone pourraient etre differents???


 
et deux objets pointant vers des addresse différentes pourraient etre égaux (typiquement si tu travailles dans un environnement distribué et que ton objet se promène d'une machine à l'autre)


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 20-08-2003 à 14:09:07    

Code :
  1. Integer a = new Integer(1);
  2. Integer b = new Integer(1);
  3. if (a.equals(b)) {
  4.    System.out.println("vrai" );
  5. }
  6. if (a == b) {
  7.    System.out.println("faux" );
  8. }


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 20-08-2003 à 14:34:02    

ben merci bien en tout k

Reply

Marsh Posté le 20-08-2003 à 16:21:09    

benou a écrit :

Code :
  1. Integer a = new Integer(1);
  2. Integer b = new Integer(1);
  3. if (a.equals(b)) {
  4.    System.out.println("vrai" );
  5. }
  6. if (a == b) {
  7.    System.out.println("faux" );
  8. }



je dirais meme:

Code :
  1. Integer a = new Integer(1);
  2. Integer b = new Integer(1);
  3. System.out.println("a.equals(b): " + a.equals(b));
  4. System.out.println("a == b" + (a == b));


[:aloy]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 20-08-2003 à 16:21:09   

Reply

Marsh Posté le 20-08-2003 à 16:30:15    


bha ouais mais là t'es obligé d'executer pour avoir le résultat.
 
snul ! :o
 
(avec un commentaire à côté à la rigueur ....)


Message édité par benou le 20-08-2003 à 16:30:43

---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 20-08-2003 à 16:31:06    

benou a écrit :


bha ouais mais là t'es obligé d'executer pour avoir le résultat.
 
snul ! :o
 
(avec un commentaire à côté à la rigueur ....)

euh ui mais bon alors autant dire  

Citation :

a.equals(b) renvoie vrai et a==b renvoie faux

 
:D


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 20-08-2003 à 16:32:08    

the real moins moins me cherche :

euh ui mais bon alors autant dire blablabla


mais tu vas te taire :o


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 20-08-2003 à 16:32:45    

benou a écrit :


mais tu vas te taire :o

[:youpi]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 20-08-2003 à 16:33:51    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed