// FOREACH public static bool ContainsDuplicates < T > ( this IEnumerable < T > enumerable ) { HashSet < T > knownElements = new ( ) ; foreach ( T element in enumerable ) { if ( ! knownElements.Add ( element ) ) { return true ; } } return false ; } //HashSet . Add returns false if the element is already present //LINQ ANY public static bool ContainsDuplicates < T > ( this IEnumerable < T > enumerable ) { HashSet < T > knownElements = new ( ) ; return enumerable.Any(element => !knownElements.Add(element)); } //LINQ ALL public static bool ContainsDuplicates < T > ( this IEnumerable < T > enumerable ) { HashSet < T > knownElements = new ( ) ; return !enumerable.All(knownElements.Add); } // primena List < int > numbers = new ( ) { 1 , 2 , 3 , 3 , 4 , 5 } ; if ( numbers.ContainsDuplicates ( ) ) { // Do something when there are duplicates }
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter