public class AboutStrings{
public static void main(String args[]){
String s1="hello";
String s2="hel";
String s3="lo";
String s4=s2+s3;
//to know the hash codes of s1,s4.
System.out.println(s1.hashCode());
System.out.println(s4.hashCode());
// these two s1 and s4 are having same hashcodes.
if(s1==s4){
System.out.println("s1 and s4 are same.");
}else
System.out.println("s1 and s4 are not same.");
}
}
Somebody told me that, == operator compares references of
the objects.
In the above example even though s1 and s4 are refering to
same object(having same hash codes),
it is printing s1 and s4 are not same.
Can anybody explain in detail why it is behaving like this?
Thanks in Advance
RavuriVinod
Answer Posted / saket
because it is a string so it didn,t equate the reference .
for string u have to used s1.equals(s4) for correct
answer.........
Is This Answer Correct ? | 1 Yes | 3 No |
Post New Answer View All Answers
Does set allows null in java?
Can a abstract class be defined without any abstract methods?
Howto get an object that will perform date & time calculations then format it for output in some different locales with different date style.can ne1 tel me the answer of this question.pls
What is the main method java?
How does java enable high performance?
Why main method is called first in java?
What is the symbol for average?
What is the purpose of file class?
Why Java is not pure Object Oriented language?
What is the exact difference in between Unicast and Multicast object? Where will it be used?
Why does java have two ways to create child threads?
Is ++ operator thread-safe in java?
What is return keyword in java?
What is the difference between a static and a non-static inner class in java programming?
Can we use different return types for methods when overridden?