如何在Matlab中初始化容器贴图数组?这样做是否有任何结构?
我需要像refMap(1)到refMap(n)之类的东西。每一本都是一本独特的词典
我打算用它来翻译本地引用的全局引用。我正在处理一种并行编程代码。所以我不能简单地将所有信息放在同一张地图上。我最终得到的结构尽可能慢。
答案 0 :(得分:1)
我不确定你是否可以使用数组。我会将不同的容器图放入单元格中。
arrayList.add(Float.valueOf(String.valueOf(your_double_variable)));
答案 1 :(得分:1)
我建议将它们存储在单元格数组中,然后你可以编写一个匿名函数来创建所有这些
create_containers = @(n)arrayfun(@(x)containers.Map(), 1:n, 'UniformOutput', false);
然后用它来创建N
containers.Map`对象
containers = create_containers(4);
答案 2 :(得分:0)
我找到了间接的方法。我可以定义一个容器映射的类是它的属性。因此,我不是初始化一个容器映射数组,而是简单地初始化一个包含容器的对象数组。
这设置了一类dict,里面有一个容器映射trans。
classdef dict
properties
trans = containers.Map
end
methods
end
end
初始化4个对象
for ii = 1:4
op(ii) = dict();
end
现在,您可以通过简单地调用来使用它们 OP(ⅱ)。反
答案 3 :(得分:0)
尽管这是一个非常老的话题,但我还是想提出我的答案。您可以使用地图的单元格数组。
no_of_maps = 10;
map1 = containers.Map('KeyType', 'double', 'ValueType', 'any');
c = {cluster1};
for i = 2:1:no_of_maps
c{i} = containers.Map('KeyType', 'double', 'ValueType', 'any');
end
现在,您获得了一组地图,您可以以c {i}的方式访问每个地图。请根据需要编辑“ KeyType”和“ ValueType”参数。