How to iterate and access over map key values
Show older comments
I have a map with some keys which has multiple number of values in it How can I access those values for each key.
these show the size of the array of the value but not the values itself.
for u = keys(mp)
mu = values(mp,u);
disp(mu)
for v = mu
disp(v);
end
disp('-----------ended------------------')
end
Answers (2)
mp = dictionary(["a1", "a2", "a3"], {1, [2 3], "str"})
k = keys(mp);
v = values(mp)
for i = 1:length(v)
disp(v(i));
end
Check the below code may be help you.
% Create and populate the map
mp = containers.Map;
mp('key1') = [1, 2, 3];
mp('key2') = {'value1', 'value2', 'value3'};
mp('key3') = [10, 20, 30, 40];
% Iterate over each key in the map
for u = keys(mp)
key = u{1}; % Extract the key from the cell array
% Access the values associated with the current key
valuesArray = mp(key);
% Iterate over each value in the values array
for i = 1:numel(valuesArray)
value = valuesArray(i);
disp(value);
end
disp('-----------ended------------------')
end
Categories
Find more on Map Display in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!