C# Equality and Hashcodes

  Рет қаралды 7,605

Coding Tutorials

Coding Tutorials

3 жыл бұрын

Coding Tutorial: C# offers lots of different ways to determine if two objects are equal. Here we discuss the whole range.
Source code available at: github.com/JasperKent/Equalit...

Пікірлер: 35
@CodingTutorialsAreGo
@CodingTutorialsAreGo 3 жыл бұрын
Any more of these fundamentals you'd like to know? Just ask. Source code at: github.com/JasperKent/Equality-And-Hashcodes Don't forget to subscribe at kzbin.info/door/qWQzlUDdllnLmtgfSgYTCA And if you liked it, click the 👍.
@tanmaymishra92
@tanmaymishra92 2 жыл бұрын
The answer i was looking for - 7:51 , thank you very much
@davidamour4501
@davidamour4501 3 жыл бұрын
I've watched a lot of tutorials over the years and this is one of the best. Very clear, thorough and easy to follow.
@CodingTutorialsAreGo
@CodingTutorialsAreGo 3 жыл бұрын
Many thanks.
@wowDepressive
@wowDepressive Жыл бұрын
Excellent! thank you very much. Love your thorough and relevant approach. covers a lot of the subject
@carlscotney3873
@carlscotney3873 3 жыл бұрын
Just encountered this channel in a recommendation and I haven't looked back since. I've been deep in learning C#/Dotnet for about 18 months now and you seem to have explained so simply almost every little 'hmmm?' moment I've had in the optimal level of detail! Great channel. Thank you so much for taking the time to produce this content.
@insigpilot
@insigpilot Жыл бұрын
Lessons like this will take my skills to the next level. Thanks mate!
@88spaces
@88spaces 2 жыл бұрын
I've been looking for a video like this for a while that explains why you need to coordinate Equals and GetHashCode. I'm glad I found yours because it explains it perfectly. Thank you. BTW, Amazon quizzes you about hashes until you're hashed out so this is a good primer for their technical interview.
@peternguyen9382
@peternguyen9382 Жыл бұрын
i am lucky to found your channel! thanks for hard working.
@AndrewAndZz
@AndrewAndZz Жыл бұрын
Very clear and great-structured explanation of such an important concept in .NET! Thank you a lot indeed, Jasper! 👏
@LuciferTheBloody
@LuciferTheBloody 2 жыл бұрын
Wow this was very informative, clear and easy to understand. Especially good actually seeing you do it in code. Thanks!
@danixadem
@danixadem 2 жыл бұрын
very comprehensive explanation about the topic. Great work
@tiburciolapanak
@tiburciolapanak 2 жыл бұрын
this is how you would know if someone is really an expert
@paxvostrum4824
@paxvostrum4824 2 жыл бұрын
also when someone looks like a professor and has books about Lenin (lower left corner)
@eslammahfouz
@eslammahfouz Жыл бұрын
Great explaination, thanks sir.
@xavieryang1255
@xavieryang1255 Жыл бұрын
Thank you very much for the tutorial. You made everything crystal clear!
@erthill2269
@erthill2269 Жыл бұрын
That was very helpful, thank you!
@hugodufort3573
@hugodufort3573 Жыл бұрын
Thanks, that was very clear!
@niranjannt637
@niranjannt637 2 жыл бұрын
Awesome explanation!!! Loved it.
@theoceandragongaming
@theoceandragongaming 7 ай бұрын
What an explanation.
@davioliveira-yj7qv
@davioliveira-yj7qv 2 жыл бұрын
Thanks for that man, helped a lot.
@FatihTurkerFatih
@FatihTurkerFatih Жыл бұрын
Wow ! well done sir
@corso321
@corso321 2 жыл бұрын
Well explained. I'm impressed.
@Schnickalodeon
@Schnickalodeon 3 жыл бұрын
I just want to thank you for your content :) you are amazing :)
@CodingTutorialsAreGo
@CodingTutorialsAreGo 3 жыл бұрын
Cheers!
@rishabhmehta2416
@rishabhmehta2416 Жыл бұрын
Thank you so much
@IBITZEE
@IBITZEE 3 жыл бұрын
very interesting the information you are showing... not so easy to find it so complete in other channels... but please... declare the variables with "var v = new " to unclutter the code you are showing...
@RiversJ
@RiversJ Жыл бұрын
Eh? If the x and y swapped produces the same hashcode then it could change behaviour if you're using hashsets to check if you already have something added to a list for example without using list.contains.
@CodingTutorialsAreGo
@CodingTutorialsAreGo Жыл бұрын
No, because a matching hash only give a higher probability of equality. Whenever hashes match, it should always be confirmed by an exact equality check. That said, a hashing algorithm that produces different results when the values are swapped would be better. Use HashCode.Combine.
@salvatoreamaddio2983
@salvatoreamaddio2983 Жыл бұрын
My Hero
@finwwwfinwww4669
@finwwwfinwww4669 2 жыл бұрын
You are awesome
@TwinbeeUK
@TwinbeeUK 2 жыл бұрын
Excellent tutorial! A shame C# doesn't easily allow you to use long (rather than int) hash codes by default as that's far less likely to have clashes between objects. Btw, at 23:45 you create a string and get different hash codes on successive runs. However at 11:40, the two strings you created always produced the same hash code, even on following runs. What gives? EDIT: Ah, to answer my own question, the version where the string produces a different hash code on different runs is due to it being under .NET Core instead of .NET Framework (the latter always produces the same hash code). They both work a bit differently it would seem!
@CodingTutorialsAreGo
@CodingTutorialsAreGo 2 жыл бұрын
Exactly the answer I would have given :)
@TwinbeeUK
@TwinbeeUK 2 жыл бұрын
@@CodingTutorialsAreGo Doing some research, it appears the reason for Microsoft's change in .NET Core is due to help security (hackers can potentially exploit the code if they know the hashing algorithm with .NET Framework).
@bashirmanafikhi
@bashirmanafikhi 2 жыл бұрын
wow ♥
Stackalloc and Spans
30:17
Coding Tutorials
Рет қаралды 8 М.
The Dispose Pattern
16:28
Coding Tutorials
Рет қаралды 9 М.
Uma Ki Super Power To Dekho 😂
00:15
Uma Bai
Рет қаралды 60 МЛН
Ну Лилит))) прода в онк: завидные котики
00:51
Glow Stick Secret 😱 #shorts
00:37
Mr DegrEE
Рет қаралды 142 МЛН
ISSEI funny story😂😂😂Strange World | Magic Lips💋
00:36
ISSEI / いっせい
Рет қаралды 187 МЛН
C# Covariance
17:27
Coding Tutorials
Рет қаралды 7 М.
Part 58 C# Tutorial Why should you override Equals Method
18:59
kudvenkat
Рет қаралды 154 М.
Properties were getting even cleaner in C# 11
8:12
Nick Chapsas
Рет қаралды 57 М.
Embedded Sys - Assignment 6
3:01
무함맏 아즈파르
Рет қаралды 1
MATLAB Measuring Time
3:37
I'm a Teacher!
Рет қаралды 18
C# | Function 'call by reference' | CodeLearning
2:06
Code Learning
Рет қаралды 4
C# 10 Part 2 - Records, Structs and Record Structs
19:32
Coding Tutorials
Рет қаралды 6 М.
What are record types in C# and how they ACTUALLY work
15:36
Nick Chapsas
Рет қаралды 116 М.
Samsung or iPhone
0:19
rishton vines😇
Рет қаралды 8 МЛН
Huawei который почти как iPhone
0:53
Romancev768
Рет қаралды 82 М.
Power up all cell phones.
0:17
JL FUNNY SHORTS
Рет қаралды 48 МЛН
📱 SAMSUNG, ЧТО С ЛИЦОМ? 🤡
0:46
Яблочный Маньяк
Рет қаралды 1,6 МЛН