where is .equals() method and how is it different from ==
operation <giving some confusing implementation> Is hashing
related to these?
Answers were Sorted based on User's Feedback
Answer / tanuj
== operator return true if both reference variable pointing
to same object.
equals() method also use == as default, but String and
Wrapper classes override (you can also override) it but
meaningfull comparison , as in two same String case it
returns true for equals()method.
for knowing it clearly make small programs by using both.
there are so many exception in wrapper classes.
| Is This Answer Correct ? | 7 Yes | 0 No |
Answer / namita
equals() method is used for comparison. it copares the
content whereas == is used to compare the references.
if the hashcode value is same for two objects equals()
method will return true. but in case of == it is not the
case.
Try following code
String str="Java";
String str1="Ja";
String str2="va";
String str3=str1+str2;
String str4 = new String("Java");
String str5 = str4;
String str6 = new String("Programming");
String str7 = new String(str6);
System.out.println(str3);
System.out.println("str "+str.hashCode());
System.out.println("str3 :- "+str3.hashCode());
System.out.println("str4 :- "+str4.hashCode());
System.out.println("str5 :- "+str5.hashCode());
System.out.println("str6 :- "+str4.hashCode());
System.out.println("str7 :- "+str5.hashCode());
if(str==str3)
System.out.println("str and str3 are equal(==)");
else
System.out.println("str and str3 are not equals
(==)");
if(str.equals(str3))
System.out.println("str and str3 are equals(.equals
())");
else
System.out.println("str and str3 are not equals
(.equals())");
if(str4==str5)
System.out.println("str4 and str5 are equal(==)");
else
System.out.println("str4 and str5 are not equals
(==)");
if(str.equals(str3))
System.out.println("equals");
else
System.out.println("not equals");
if(str6==str7)
System.out.println("str6 and str7 are equal(==)");
else
System.out.println("str6 and str7 are not equals
(==)");
if(str.equals(str3))
System.out.println("equals");
else
System.out.println("not equals");
| Is This Answer Correct ? | 6 Yes | 0 No |
Answer / esha prasad
.equlas() method is in Object class which compares two
objects and returns true if both are same.
== compares whether two references pointing to same memory
location.
| Is This Answer Correct ? | 2 Yes | 2 No |
Answer / pavan kumar pathivada
The code by Namita works successfully but you need to make
certain changes to understand the concept.for every .equals
comparison in the code only two strings are considered
everytime i.e str and str3. Note that the hash code
functions also need to changed for str6 and str7.
anywys...great work namita...helped me a lot...thnks...
| Is This Answer Correct ? | 0 Yes | 0 No |
What exactly is methodology?
What is the purpose of the strictfp keyword?
Which method will get invoked first in a stand alone application?
What is the purpose of final keyword and when to use it?
What are the uses of final, finally and finalize in java?
2 Answers Agiline, FINO PayTech, HCL,
What is sizeof in java?
What is Unicast and Multicast object? Where we will use?
1 Answers Scope International,
Explain about doubly linked list
0 Answers Aditi Placement Service,
What is the differences between heap and stack memory in java? Explain
Differences between jdk 1.4 and 1.5
6 Answers SoftSol, TCS, Wipro,
How is it possible for two string objects with identical values not to be equal under the == operator?
What is static in java?