Created
December 26, 2014 11:29
-
-
Save adelatorrefoss/631fdcb2ca481d072546 to your computer and use it in GitHub Desktop.
Awesomeness in Sets - separate the unique and duplicating items in a list
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // Examples with Lists and Sets | |
| // For small numbers of items, it's common in Groovy to use a list for set processing, and only convert it to a set when necessary, eg, for output. | |
| // Though the uniqueness of set items is useful for some processing, for example, if we want to separate the unique and duplicating items in a list: | |
| list=[1,2,7,2,2,4,7,11,5,2,5] | |
| def uniques= [] as Set, dups= [] as Set | |
| list.each{ uniques.add(it) || dups.add(it) } | |
| uniques.removeAll(dups) | |
| assert uniques == [1,4,11] as Set && dups == [2,5,7] as Set |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment