Key-Value Pairs – Maps in Flutter Dart Sample Codes

Maps in Flutter are used to store data as Key-Value pairs. So that the data can be access from the map using the specific key. Let’s see how to create a Map in Flutter – it will be a collection of key-value pairs. Also, we will be seeing how to push/add an item to Map.

Sample Map data:

Map<String, int> = {'BTC': 5, 'ETH': 1, 'LTC': 2};

Creating a new Map in Flutter – Dart Code

Here is the code in flutter – creating an empty map named coinPrice

Map<String, String> coinPrice = {};

Add a new item Map in Flutter – Dart Code

coinPrice['BTC'] = "345345";

Full Code:

const List<String> cryptoList = [
  'BTC',
  'ETH',
  'LTC',
];

const coinAPIURL = 'https://rest.coinapi.io/v1/exchangerate';
const apiKey = '5CACF267-0607-425B-B875-FBA947VCB321';

class CoinData {
  
  Future getCoinData(String selectedCurrency) async {

    Map<String, String> coinPrice ={};      //creating empty map

    for (String coin in cryptoList) {
      String requestURL = '$coinAPIURL/$coin/$selectedCurrency?apikey=$apiKey';
      http.Response response = await http.get(requestURL);
      if (response.statusCode == 200) {
        var decodedData = jsonDecode(response.body);
        var lastPrice = decodedData['rate'];

        coinPrice['$coin'] = lastPrice.toStringAsFixed(0);    //adding new item to map

        print(coinPrice);
      } else {
        print(response.statusCode);
        throw 'Problem with the get request';
      }
    }
    return coinPrice;    //returning map data
  }
}

Output:

About the Author: smartcoder

You might like

Leave a Reply

Your email address will not be published. Required fields are marked *