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 |
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
| interface Repository<T> { | |
| T save(T t) | |
| } | |
| interface IntegerRepository { | |
| Integer findByIntegers(String name) | |
| } | |
| abstract class InMemoryRepository<A> implements Repository<A> { | |
| A save(A a) { |
NewerOlder