String equals() vs == என்ன வித்தியாசம்? - தெளிவான விளக்கம்
Here is a clear, simple Tamil explanation you can directly use in tamilkadal.com 👇
🔥 String equals() vs == என்ன வித்தியாசம்?
Java-வில் String comparison செய்யும்போது, இரண்டு விதமான முறைகள் இருக்கின்றன:
👉 == operator
👉 equals() method
இரண்டும் ஒரே மாதிரி போல தோன்றினாலும், அவை வேறு வேறு விஷயங்களை compare செய்கின்றன.
✅ 1️⃣ == operator என்ன செய்கிறது?
== என்பது reference (memory address)-ஐ compare செய்கிறது.
அதாவது:
இரண்டு variables ஒரே object-ஐ point செய்கிறதா என்பதை பார்க்கும்.
🔹 Example:
String s1 = "Java";
String s2 = "Java";
System.out.println(s1 == s2);
👉 Output:
true
🤔 ஏன் true வருகிறது?
-
"Java"என்பது String Pool-ல் store ஆகும் -
s1, s2 இரண்டும் அதே object-ஐ point செய்கின்றன
❌ 2️⃣ == ஏன் சில நேரங்களில் false?
String s1 = new String("Java");
String s2 = new String("Java");
System.out.println(s1 == s2);
👉 Output:
false
🤔 ஏன் false வருகிறது?
-
new String()பயன்படுத்தும்போது:-
இரண்டு புதிய object-கள் heap memory-ல் உருவாகும்
-
-
s1 மற்றும் s2 வேறு memory location-ஐ point செய்கின்றன
👉 அதனால் == → false
✅ 3️⃣ equals() method என்ன செய்கிறது?
equals() என்பது value/content-ஐ compare செய்கிறது.
🔹 Example:
String s1 = new String("Java");
String s2 = new String("Java");
System.out.println(s1.equals(s2));
👉 Output:
true
🤔 ஏன் true வருகிறது?
-
இரண்டிலும் உள்ள value
"Java"same -
equals()content மட்டும் check செய்கிறது
🎯 முக்கிய வித்தியாசம்
| Comparison | என்ன compare செய்கிறது? | Result |
|---|---|---|
== |
Memory reference | true / false |
equals() |
Value (content) | true / false |
🧠 Simple Explanation (Students க்கு)
👉 == → "இரண்டு variables ஒரே object-ஆ?"
👉 equals() → "இரண்டு values ஒரே மாதிரியா?"
🔥 Best Practice
👉 String compare செய்யும்போது எப்போதும்:
s1.equals(s2)
✔ Use equals()
❌ Avoid == (for content comparison)
⚠️ Interview Point
String s1 = "Java";
String s2 = new String("Java");
System.out.println(s1 == s2); // false
System.out.println(s1.equals(s2)); // true
🚀 முடிவு
👉 == என்பது memory address compare செய்யும்
👉 equals() என்பது actual value compare செய்யும்
👉 அதனால் தான் == சில நேரங்களில் true, சில நேரங்களில் false வரும்.
மேலும் Java மற்றும் Spring Boot tutorials-க்காக follow செய்யுங்கள்.
Facebook Page: Tamil Kadal Facebook Page
TamilKadal YouTube Channel: Tamil Kadal YouTuibe Chennel
தொடர்புடைய பதிவுகள்