[infinispan-dev] Avoid Collections.emptySet() / emptyMap() / emptyList

Vladimir Blagojevic vblagoje at redhat.com
Fri Oct 19 10:50:04 EDT 2012


Cool! Did not know about this! Is this original idea or others are 
already doing this?
On 12-10-19 8:31 AM, Galder Zamarreño wrote:
> Hi all,
>
> Re: https://github.com/galderz/infinispan/commit/0609207d13216de81d77ff51dc20652ce270c635
>
> Please avoid using these JDK methods where possible. I've created alternative versions in InfinispanCollections util class that provide a better implementation.
>
> The problem with the JDK versions is that even if these collections are immutable, if you wanna iterate them (i.e. for(X : emptySet) ), they'll create a brand new Iterator every time they're looped, and that generates useless garbage.
>
> The InfinispanCollections versions of emptyX will return a constant singleton iterator which avoids this problem, and avoids the need for client code to check if the collection is empty before looping.
>
> Cheers,
> --
> Galder Zamarreño
> galder at redhat.com
> twitter.com/galderz
>
> Project Lead, Escalante
> http://escalante.io
>
> Engineer, Infinispan
> http://infinispan.org
>
>
> _______________________________________________
> infinispan-dev mailing list
> infinispan-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/infinispan-dev



More information about the infinispan-dev mailing list