To create a map in Groovy, you can simply use curly braces {} to define key-value pairs. Each key-value pair is separated by commas, with the key and value separated by a colon. For example:
def myMap = [name: "John", age: 30, city: "New York"]
This code snippet creates a map called 'myMap' with three key-value pairs: 'name' with value "John", 'age' with value 30, and 'city' with value "New York".
You can also create an empty map and add key-value pairs later:
def myMap = [:] myMap.name = "Alice" myMap.age = 25 myMap.city = "Los Angeles"
In this example, an empty map is created and then key-value pairs are added sequentially.
Maps in Groovy are dynamic, which means you can easily add, remove, and update key-value pairs as needed. Maps can be used to store and retrieve data efficiently in your Groovy code.
How to filter a map in Groovy?
In Groovy, you can filter a map using the findAll
method.
Here's an example of how to filter a map in Groovy:
1 2 3 4 5 |
def map = [1: 'Jane', 2: 'John', 3: 'Alice', 4: 'Bob'] def filteredMap = map.findAll { key, value -> value.startsWith('J') } println filteredMap |
In this example, the filteredMap
will contain only the key-value pairs where the value starts with 'J'.
You can customize the filtering criteria by changing the condition inside the findAll
closure.
How to transform values in a map in Groovy?
In Groovy, you can transform values in a map using the collectEntries
method. This method allows you to iterate over the entries in a map and apply a transformation to each value.
Here's an example:
1 2 3 4 5 |
def map = [a: 1, b: 2, c: 3] def transformedMap = map.collectEntries { k, v -> [k, v * 2] } println transformedMap |
In this example, the collectEntries
method is used to iterate over each entry in the map
and multiply each value by 2. The resulting transformedMap
will have the same keys as the original map, but with the transformed values.
Output:
1
|
[a:2, b:4, c:6]
|
How to get the size of a map in Groovy?
To get the size of a map in Groovy, you can use the size()
method. Here is an example:
1 2 3 |
def myMap = [a: 1, b: 2, c: 3] def mapSize = myMap.size() println "Size of the map: $mapSize" |
In this example, the size()
method is called on the myMap
object to get the size of the map. The output will be:
1
|
Size of the map: 3
|
This indicates that the map myMap
has a size of 3.