变量知道它的数组吗?

时间:2015-07-23 21:22:10

标签: ruby

如果变量在数组中,你能从该变量中找到这个数组吗?或者变量是否不知道它内部的数据结构?

只是想知道以下是否可行(唯一的伪代码是v的{​​{1}}方法):

its_array

1 个答案:

答案 0 :(得分:3)

首先,您不要将变量放在数组中。您将对象放在数组中,而变量不是Ruby中的对象,因此您不能将它们放在数组中。事实上,由于变量不是Ruby中的对象,因此您几乎无法使用它们进行任何。 Ruby是一种面向对象的语言,无论何时你想要用某种东西做某事,你都可以通过调用一个方法或者将这个东西作为一个参数传递给一个方法来实现。但是你只能在对象上调用方法,你只能将对象作为参数传递,而变量不是对象,所以你真的不能做任何事情。你可以用变量完成两件事:分配它们并取消引用它们。

其次,一般情况下,对象不会,而一定不能知道它所放入的任何容器。这或多或少会否定容器的整个要点:你可以将任意对象放入其中。

另外,对于没有数组的对象,its_array甚至会返回什么?或者是两个阵列?或者是在一个阵列中的数组中?