Pourquoi String.equls() renvoie true mais Stringbuilder.equals() renvoie false?StringBuffer et String Comparaison
StringBuffer sb1 = new StringBuffer("Amit");
StringBuffer sb2= new StringBuffer("Amit");
String ss1 = "Amit";
String ss2 = "Amit";
System.out.println(sb1.equals(sb2)); //returns false
System.out.println(ss1.equals(ss2)); //returns true
Thx
Alors comment comparer comme des objets String? – JavaUser
Suivi, pour JavaUser: [documentation StringBuffer] (http://java.sun.com/javase/6/docs/api/java/lang/StringBuffer.html) - comme vous pouvez voir la méthode 'equals' n'est pas surchargé dans StringBuffer (en bas de la liste des méthodes il y a "Methods inherited from java.lang.Object", qui contient "equals"), donc vous pouvez observer le comportement de StringBuffer # equals est celui de [Object # est égal à ] (http://java.sun.com/javase/6/docs/api/java/lang/Object.html#equals (java.lang.Object)) –
@JavaUser Vous pouvez rechercher la documentation de la chaîne de cette façon ainsi - notez ce que [String # equals] (http://java.sun.com/javase/6/docs/api/java/lang/String.html#equals (java.lang.Object)) dit à propos de lui-même . –