(Container)Map with array keys
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Bananach
el 19 de Abr. de 2016
Respondida: Titus Edelhofer
el 19 de Abr. de 2016
I need a Map whose keys are arrays of integers. MATLAB's Containers.Map does not allow array keys. The implementation with Java's HashMap below also does not work.
jm=java.util.HashMap();
a=[1 1];
jm.put(a,1)
jm.containsKey(a)
I thought that an ad-hoc solution, for fixed array length 2, would be to convert the array into a scalar double (in a reversible way). If there is no other way, could anyone help me doing this?
0 comentarios
Respuesta aceptada
Titus Edelhofer
el 19 de Abr. de 2016
Hi,
no, there is no "nice" way of doing this. Using a scalar should work fine though:
a = [42 23];
% assume that your indices fit into [0..65535] (example)
key = a(1)*65536 + a(2);
m = containers.Map({key}, {'Bananach'});
% access works
m(key)
% and it's reversible
aFromKey = [floor(key/65536), rem(key, 65536)]
Titus
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Java Client Programming en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!