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 |
where u use Abstraction and Interface in real time
we have two threads..both the threads are reading the data.. is there any need of synchronization there?...justify it?
What is JDK? Mention the variants of JDK?
Can a Byte object be cast to a double value?
Is it possible to write method inside method
What is the difference between serializable and externalizable interfaces?
How do you compare values in java?
Are arrays static in java?
Explain the difference between call by refrence and call by value?
Mention some features of java?
What is a vararg?
Why do we use threads in java?