For step by step explanation on hashcode and equals() in Java, please check out my new playlist by clicking the link below ua-cam.com/play/PL3NrzZBjk6m95SR6WzhnOGGCjXZpCoO-k.html
I have become fan of you.... thanks for the informative vedio....and for the people it's not the fake accent ... it's his confidence that he gained due to knowledge....so please don't discourage any knowledgeable person like this...
Thank you so much for your great explanations! so all i need to do is to go to Id=>source=>generate hashcode( )and equal(),so i cn get the map.size(1),right?
Explanation was helpful but a bit confusing during few moments. Two advice for you if you accept it.... First: Try to speak in Indian accent of English so it won't fake. Second: Reduce the redundancy of some words you speak very frequently i.e. 'Over here'. You don't complete your most of the sentences without prefixing or suffixing 'Over here' ;). Please don't take it personal and also remember "Your critics are your biggest followers".
No where the difference between hashCode and equals is explained. Also please explain why we need to generate the hashcode and equals method and how did it make the values change from 2 to 1
Hi Shalabh, This is a video from my interview questions and answers series. So I haven't covered the concept in this video rather this is just an interview question that I am trying to explain. I will be posting a complete video on this concept in the coming week.
Good explanation. Addition to that I wanna add one more point, if u add your custom object as key of map then it should be immutable. So u have to make your employee object as immutable object as string class.
Excellent teaching. May I know where I can find all your Java interview QA videos, Selenium interview QA , Java tutorial and Selenium tutorial at one place? Could you please share. I am learning a lot from your videos.
i saw lots of video but still there is confusion in my mind ,,,after seeing this video i understand 100% of this fundamental,thank u sooooo much,keep going we will support you.
You describe everything in such an organized and nice manner. No one can compete you. From covering the most trivial detail to covering the complex thing of every concept is what makes you unique. Keep up the good work. Looking forward to many more informative videos from you.
Hi, if possible, please explain why we need to override hashcode() if we are overriding equals()...By the way, your accent doesn't matter only subject matters...Keep it going :-) you are doing a great job...
Bcz of contract between .equals()/ hashCode() method. ->Two equivalent object should be placed in same bucket and There HASHCODE must be same. s1.equals(s2); && s1.hashCode()==s2.hashCode();
I shall add in a few more points after what Gaikwad said . • Let's consider we have a HashSet which already has 100 elements preloaded in it. • Let's say, we want to add a new element, ie. the 101th element to the set. • The HashSet is designed to keep unique elements only. So when the 101th element is introduced, the add() logic will compare the 101th element, with each of the previously stored 100 elements. Right ? This is where hashcode() comes to rescue. If a proper hashcode() logic has been implemented, then the addition of new elements to the HashSet, will require much fewer equality comparisons. • For example without hashcode() the add() method has to do 100 equality checks. But with a good hascode() logic, the add() operation may not require more that 20 checks.
@@coolfreaks68 Hi subhadeep..I can get ur point that with a good hashcode logic, we can avoid more comparisons.could you pls explain how it minimizes the comparison?
@@srinathravichandran8796 - Obviously because each Hash bucket usually has fewer elements than its parent Hash Set. Only a very bad hascode() logic can push all the elements of HashSet into just one Hash bucket - giving no performance improvement. A good hashcode() logic on the other hand, distributes the elements among multiple buckets, with each bucket having very less number of elements and with all the buckets having almost equal number of elements. Eg : if you have , lets say a 100 element in hash set. A bad hashcode() logic will push all 100 elements into 1 bucket , leaving other buckets empty ! A good hashcode() logic will push 10 elements to each of the 10 buckets. So whenver you are searching , first you find out the bucket number, then you do a binary search inside that specific bucket. So there is performance improvement.
Thank u sir for the great tutorial.This is fundamental and root to start.This is what we missed till now in other tutorials.very unique explanation.Thank u ..big fan :)
No. That is really required for Hashing, which recommends the key value (here 'id') to be multiplied by a prime number. For all sake of randomness. Most people take 31 as a good prime number to have a better sampling.
But Sir the two employees object hold different memory addresses and in a map we cannot have same keys and in this case the keys emp1 and emp2 are already different only the value they contain are same .So how are the entry set duplicates.Can you pls explain
When you instantiate 2 Employee objects with the same ID, shouldnt it still be considered as 2 seperate objects? Just because both objects have the same ID value, doesnt mean they are equal? For example, 2 car objects can have the same color attribute. So why would we be expecting the hashmap.size to return 1? It should still have 2 objects mapped, no?
For step by step explanation on hashcode and equals() in Java, please check out my new playlist by clicking the link below
ua-cam.com/play/PL3NrzZBjk6m95SR6WzhnOGGCjXZpCoO-k.html
i get invalid parameters... is this right url? thanks.
this helped me out with my issue today, thank you ver much
I like the way you started the problem and slowly decoding...
it,s Really Helpful me this video..........Thanks a lot Sir.
Explained very nicely.. The way of started, the way of required info from api document, different type objects.. 👏
I have become fan of you.... thanks for the informative vedio....and for the people it's not the fake accent ... it's his confidence that he gained due to knowledge....so please don't discourage any knowledgeable person like this...
You tooooo have an impeccable knowledge😊😊
I am watching on Sep 2021. Great job bro. ❤️❤️
You are a real coder, otherwise most of the people talks about theory.
Keep up the good work !!
You are what ?
Very nice explanation.... Awesome 👍
Your way of explain is understandable it is helpful
That's Amazing I'am not aware about Wrapper class that it having equal and hashcode.
The way you are explaining the concept with example is awesome and it clear to understand
Really very helpful content with proper explaination
Perfect explanation that I want. Now I am clear with my doubts in hastable. Thanks and please create more video on programming.
Wonderful explaination brother
Super bro. Nice explaination.👍
Amazing explanation 👌
Master level explanation, really hats off
Actually I watched several videos to understand this concept. But this one is 🔥 simply
Wow! Awesome explanation 🙏
Excellent explanation!!
Very nice clear explanation Sir. Thank you 👍
Now I actually got the point.. Thanks brother 👍
Thank you a lot for the great explanation
so super explanation , really it's wonderful explanation. You borned for us only.
so so sooooo nice of you.. Thank you soooooo much.
very nicely explained
Because map uses hash to target keys! brilliant example thanks
Good one
Gud information keep going
Good explanation
best example, basic point explained, but still should have talked more about equals and hashcode methods
Amazing and very simple explanation, Thanks !!
nice one
Very good explanation bro.. Thank you..
You are a genius
Very clear explanation, thank you !!! your voice makes the explanation more interesting.
Not really !
Great Video!! Understood clearly!
Nice video Bro
Thank you so much for your great explanations! so all i need to do is to go to Id=>source=>generate hashcode( )and equal(),so i cn get the map.size(1),right?
Explanation was helpful but a bit confusing during few moments. Two advice for you if you accept it.... First: Try to speak in Indian accent of English so it won't fake. Second: Reduce the redundancy of some words you speak very frequently i.e. 'Over here'. You don't complete your most of the sentences without prefixing or suffixing 'Over here' ;). Please don't take it personal and also remember "Your critics are your biggest followers".
Agreed men
I have same opinion. Sometimes it made me feel annoying.
Fantastic tutorial but need to improve the above mentioned points.
Agree, that's the worst part of it...be natural...
Excellent explanation! Thanks.
Superb explanantion. Thank you
finally someone clearly explained it!
No where the difference between hashCode and equals is explained. Also please explain why we need to generate the hashcode and equals method and how did it make the values change from 2 to 1
Hi Shalabh,
This is a video from my interview questions and answers series. So I haven't covered the concept in this video rather this is just an interview question that I am trying to explain. I will be posting a complete video on this concept in the coming week.
@@SeleniumExpress ok. Thank you!
@@SeleniumExpress Can you please share the link for the complete concept video.
Good explanation. Addition to that I wanna add one more point, if u add your custom object as key of map then it should be immutable. So u have to make your employee object as immutable object as string class.
Excellent teaching. May I know where I can find all your Java interview QA videos, Selenium interview QA , Java tutorial and Selenium tutorial at one place? Could you please share. I am learning a lot from your videos.
i saw lots of video but still there is confusion in my mind ,,,after seeing this video i understand 100% of this fundamental,thank u sooooo much,keep going we will support you.
you doing great job buddy keep it up
Спасибо! Thank you from Russia!
You are welcome !!
Very help full for beginners thank you :)
Super Brother...
Thank you so much
Wow thanks 💓
Thank you for explanation. The visual animation is very helpful.
You describe everything in such an organized and nice manner. No one can compete you. From covering the most trivial detail to covering the complex thing of every concept is what makes you unique. Keep up the good work. Looking forward to many more informative videos from you.
Hi, if possible, please explain why we need to override hashcode() if we are overriding equals()...By the way, your accent doesn't matter only subject matters...Keep it going :-) you are doing a great job...
Bcz of contract between .equals()/ hashCode() method.
->Two equivalent object should be placed in same bucket and There HASHCODE must be same.
s1.equals(s2); &&
s1.hashCode()==s2.hashCode();
I shall add in a few more points after what Gaikwad said .
• Let's consider we have a HashSet which already has 100 elements preloaded in it.
• Let's say, we want to add a new element, ie. the 101th element to the set.
• The HashSet is designed to keep unique elements only. So when the 101th element is introduced, the add() logic will compare the 101th element, with each of the previously stored 100 elements. Right ? This is where hashcode() comes to rescue. If a proper hashcode() logic has been implemented, then the addition of new elements to the HashSet, will require much fewer equality comparisons.
• For example without hashcode() the add() method has to do 100 equality checks. But with a good hascode() logic, the add() operation may not require more that 20 checks.
@@coolfreaks68 Hi subhadeep..I can get ur point that with a good hashcode logic, we can avoid more comparisons.could you pls explain how it minimizes the comparison?
@@srinathravichandran8796 - Obviously because each Hash bucket usually has fewer elements than its parent Hash Set.
Only a very bad hascode() logic can push all the elements of HashSet into just one Hash bucket - giving no performance improvement.
A good hashcode() logic on the other hand, distributes the elements among multiple buckets, with each bucket having very less number of elements and with all the buckets having almost equal number of elements.
Eg : if you have , lets say a 100 element in hash set.
A bad hashcode() logic will push all 100 elements into 1 bucket , leaving other buckets empty !
A good hashcode() logic will push 10 elements to each of the 10 buckets. So whenver you are searching , first you find out the bucket number, then you do a binary search inside that specific bucket. So there is performance improvement.
@@coolfreaks68 that's a clever way of handling buckets, thank you
Thanks a lot friend
simply awesome
Excellent. Thanks for sharing your knowledge.
Thanks for the explanation dude. It helped.
overall conclusion 10:40 thank you sir
Thank u sir for the great tutorial.This is fundamental and root to start.This is what we missed till now in other tutorials.very unique explanation.Thank u
..big fan :)
Thanks, Teju..
Its good. Keep Posting bro
I like the ending music so much and video too thank you bhai
Nice Explanation bro.Thanks👍..
HI Avinash, When we use jpa repository.saveOrUpdate(product);, my product object has 1 lak records, will it accept? Is there any limitation ?
Wow...this is to the point. Thanks a lot
THANK YOU SO MUCH!
u got great explanation skills
How come emp1 and emp2 having the same hashcode? Can someone please help
In the hashCode method why 31 is multiplied by 1 and id. We can directly return the id right?
No. That is really required for Hashing, which recommends the key value (here 'id') to be multiplied by a prime number. For all sake of randomness. Most people take 31 as a good prime number to have a better sampling.
I don't know why I didn't see this video earlier. Got this in an interview and I wasn't able to answer.
same bro,same!!
Great thanks.
Simply Awesome!!
Good job. thanks
Dear Abhilash sir i have one que. which empoyee object will hashmap put 1st ya 2nd after using hashmap and equal method😊
this video easy to understand :) thankyou so much.
But Sir the two employees object hold different memory addresses and in a map we cannot have same keys and in this case the keys emp1 and emp2 are already different only the value they contain are same .So how are the entry set duplicates.Can you pls explain
I put the code as you shown in my side and in both cases ham getting size =2
Amazing explanation! Thanks a lot :)
Great Explanation👌 Thanks a Lot :-) . BTW, which software are you using for making this video?? It looks so attractive 😊
Simply awesome
nice good explanation
Thank u very much. Very helpful and clear
Thanks, Sri Kanth.
Do videos on java framework
Wow r Ally good .and why don't you make videos in following concept cuz there is no good videos in UA-cam threads collection jsf spring
Great! Thank you.
Nice
Below my all question are more help full in interview point of view.
So, Could you please explain below all videos to me
Very very clear explanation. Plse upload how to upload webproject deployed server
Can we avoid duplicate object reference by implementing hascode() n equal () methods?
Could you please explain the oops (Abstraction, Inheritance, Encapsulation, Polymorphism ) concepts in java with theory and real examples
hi your videos were really helpful. do you have any videos related to regular expressions?
Could you please explain the Internal mechanism of HashSet in java with theory and real time examples
Thanks a lot
When you instantiate 2 Employee objects with the same ID, shouldnt it still be considered as 2 seperate objects? Just because both objects have the same ID value, doesnt mean they are equal? For example, 2 car objects can have the same color attribute. So why would we be expecting the hashmap.size to return 1? It should still have 2 objects mapped, no?
It depends on how your equals method is implemented
Excellent
Could you please explain the use of Comparable and Comparator in java with theory and real time examples
Verify durga software videos it is explained thr
Very nice
Thanks, Ramesh
Could you please explain the use of String Buffer and String Builder in java with theory and real time examples