Difference between << and + operators in Groovy maps
Hey there... I've got a problem with these guys...
There is no defference in the result of these two operations.
You can use plus operator:
assert [ a: 1, b: 1 ] + [ a: 0 ] == [ a: 0, b: 1 ]
Or left shift:
assert [ a: 1, b: 1 ] << [ a: 0 ] == [ a: 0, b: 1 ]
And the result would be all the same.
But...
The difference is that << adds the right map into the left map, and when you use +, Groovy constructs a new Map based on the left map, and adds the right map into it.
So when you need to change a left Map instance - use << operator,
but when you need to create a new Map instance based on two or more maps - use + operator.
Written by Alexey Lisikh
Related protips
Have a fresh tip? Share with Coderwall community!
Post
Post a tip
Best
#Groovy
Authors
Sponsored by #native_company# — Learn More
#native_title#
#native_desc#