Skip to main content
ubuntuask.com

Back to all posts

How to Create A Map In Groovy?

Published on
3 min read

Table of Contents

Show more
How to Create A Map In Groovy? image

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:

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:

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:

[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:

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:

Size of the map: 3

This indicates that the map myMap has a size of 3.