Problema con metodo assoc


#1

Hola a todos. Tengo el siguiente codigo “http://pastie.org/366013”, en
el que utilizo el metodo “assoc” de la clase Array. Este metodo como
saben me tiene que devolver el contenido de un Array que esta dentro de
otro Array, Verdad?.

1 a = [“1”, “2”, “3”]
2 b = [“4”, “5”, “6”]
3 c = [“7”, “8”, “9”]
4 d = [a, b, c]
5 puts d.assoc(“1”)
6 ("1, “2”, “3”)
7 puts d.assoc(“4”)
8 (“4”, “5”, “6”)
9 puts d.assoc(“7”)
10 (“7”, “8”, “9”)
11 #A patir de aca todo me devuelve nil
12 puts d.assoc(“2”)
13 nil
14 puts d.assoc(“3”)
15 nil
16 puts d.assoc(“5”)
17 nil
18 puts d.assoc(“6”)
19 nil
20 puts d.assoc(“8”)
21 nil
22 puts d.assoc(“9”)
23 nil

  No entiendo porque no me devuelve el valor del Array cuando

utilizo el segundo o tercer valor de alguno de estos. Espero ser claro.


#2

2009/1/20 Ariel A. removed_email_address@domain.invalid:

6 ("1, “2”, “3”)
17 nil
18 puts d.assoc(“6”)
19 nil
20 puts d.assoc(“8”)
21 nil
22 puts d.assoc(“9”)
23 nil

 No entiendo porque no me devuelve el valor del Array cuando

utilizo el segundo o tercer valor de alguno de estos. Espero ser claro.

Si miras la documentación de assoc
http://apidock.com/ruby/Array/assoc verás que únicamente se fija en
el primer elemento del Array. Lo que tu pretendes no se puede
conseguir con assoc.


#3

Gracias por el dato Daniel. Estoy aprendiendo Ruby con un libro(como ya
explique en otro post) y el autor dio los ejemplos como si se pudiera.
Saludos.