Reputation: 39
How to access a Map element value by key, when a Map is inside a list?
'rooms': [
{
'roomNumber': 1,
'roomBeds': 1,
'roomColor': 1,
'roomNumOfDwellers': 0,
'roomDwellers': [
]
},
{
'roomNumber': 2,
'roomBeds': 3,
'roomColor': 2,
'roomNumOfDwellers': 0,
'roomDwellers': [
]
},
]
Tried this, doesn't work:
myPODO.rooms[1].['roomBeds']
The error message is:
Class '_InternalLinkedHashMap' has no instance getter 'roomBeds'. Receiver: _LinkedHashMap len:5 Tried calling: roomBeds
Upvotes: 0
Views: 6941
Reputation: 5172
try to replace
myPODO.rooms[1].['roomBeds']
with
myPODO.rooms[1]['roomBeds']
Upvotes: 4
Reputation: 5545
Store the items in a list of Map and you can then print the values by key names.
void main() {
List<Map<String, dynamic>> rooms = [
{
'roomNumber': 1,
'roomBeds': 1,
'roomColor': 1,
'roomNumOfDwellers': 0,
'roomDwellers': [
]
},
{
'roomNumber': 2,
'roomBeds': 3,
'roomColor': 2,
'roomNumOfDwellers': 0,
'roomDwellers': [
]
},
];
print(rooms[1]['roomBeds']);
}
Upvotes: 3