Skip to content
DeveloperMemos

How to Use Spread Operator in Dart

Dart, Spread Operator1 min read

If you're a developer who works with lists and maps regularly, you know how important it is to be able to manipulate them efficiently. Thankfully, Dart provides us with powerful tools to get the job done quickly and easily. One of these tools is the spread operator.

The spread operator is represented by three dots (...) and can be used to combine or expand the elements of a list or map. It allows us to insert the elements of one list or map into another. Let's take a look at some examples of how to use the spread operator in Dart.

Using the Spread Operator with Lists

Combining Lists

Suppose we have two lists, list1 and list2, and we want to merge them into a single list. We can do this using the spread operator as follows:

1var list1 = [1, 2, 3];
2var list2 = [4, 5, 6];
3var combinedList = [...list1, ...list2];
4print(combinedList); // Output: [1, 2, 3, 4, 5, 6]

Adding Elements to a List

We can also use the spread operator to add elements to an existing list. For example, suppose we have a list of numbers and we want to add a new number to the beginning of the list. We can do this using the spread operator as follows:

1var numbers = [2, 3, 4];
2var newNumbers = [1, ...numbers];
3print(newNumbers); // Output: [1, 2, 3, 4]

Using the Spread Operator with Maps

Combining Maps

Like with lists, we can use the spread operator to combine two maps. Suppose we have two maps, map1 and map2, and we want to merge them into a single map. We can do this using the spread operator as follows:

1var map1 = {'a': 'apple', 'b': 'banana'};
2var map2 = {'c': 'cherry', 'd': 'date'};
3var combinedMap = {...map1, ...map2};
4print(combinedMap); // Output: {a: apple, b: banana, c: cherry, d: date}

Adding Elements to a Map

We can also use the spread operator to add elements to an existing map. For example, suppose we have a map of countries and their capital cities, and we want to add a new country to the map. We can do this using the spread operator as follows:

1var countries = {'USA': 'Washington D.C.', 'France': 'Paris'};
2var newCountries = {'Germany': 'Berlin', ...countries};
3print(newCountries); // Output: {Germany: Berlin, USA: Washington D.C., France: Paris}

As you can see, the spread operator is a powerful tool that can make manipulating lists and maps much easier and more efficient in Dart. I hope this article has been helpful in showing you how to use it effectively.