如何解释此调试器输出?
How do I interpret this debugger output?
任何人都可以告诉我如何获得第 n 个值,假设在以下调试器输出中的 children[0]
中的第 3 个值(即 1)?我尝试了 children[0][2]
但没有成功。
children = Array (101 elements)
[0] = Hash (1 element)
bitstring => Array (100 elements)
key = {Symbol} bitstring
value = Array (100 elements)
[0] = 1
[1] = 0
[2] = 1
[3] = 1
[4] = 1
[5] = 1
您可以通过 children[0][:bitstring][2]
获取它,这可以很容易地从调试器输出中看到。
调试器输出的结构方式是 variable_name = {Class} value
的列表,其中 {Class}
是值的 Class 类型(如果它不是基元或集合),在在这种情况下,该部分(包括大括号)被排除在外。
当value
是某种集合时,value
所在的位置显示集合类型和集合中元素的数量,然后从下一行开始,缩进一个额外的数量,每个元素以 accessor = value
的形式列出。如果该值也是一个集合,那么同样的事情再次发生:集合类型和集合中元素的数量显示在 value
所在的位置,然后从下一行开始,并缩进额外的数量。所以当你看到这个时:
children = Array (101 elements)
[0] = Hash (1 element)
bitstring => Array (100 elements)
key = {Symbol} bitstring
value = Array (100 elements)
[0] = 1
[1] = 0
[2] = 1
[3] = 1
[4] = 1
[5] = 1
你应该看到
children
是一个数组
children[0]
是一个哈希
children[0][:bitstring]
是一个数组
children[0][:bitstring][2]
是:bitstring
数组的第三个元素,它的值是整数1
您知道散列键是 :bitstring
而不是 "bitstring"
的方式是,对于散列,每个元素本身就是 key
和 value
的集合, 所以你看到 bitstring => Array (100 elements)
行下面有 2 行,一行以 key
开头,另一行以 value
开头。 key
列为 {Symbol} bitstring
,告诉您它是符号 :bitstring
。如果键是一个字符串,它只会说 key = "bitstring"
(注意引号)。
任何人都可以告诉我如何获得第 n 个值,假设在以下调试器输出中的 children[0]
中的第 3 个值(即 1)?我尝试了 children[0][2]
但没有成功。
children = Array (101 elements)
[0] = Hash (1 element)
bitstring => Array (100 elements)
key = {Symbol} bitstring
value = Array (100 elements)
[0] = 1
[1] = 0
[2] = 1
[3] = 1
[4] = 1
[5] = 1
您可以通过 children[0][:bitstring][2]
获取它,这可以很容易地从调试器输出中看到。
调试器输出的结构方式是 variable_name = {Class} value
的列表,其中 {Class}
是值的 Class 类型(如果它不是基元或集合),在在这种情况下,该部分(包括大括号)被排除在外。
当value
是某种集合时,value
所在的位置显示集合类型和集合中元素的数量,然后从下一行开始,缩进一个额外的数量,每个元素以 accessor = value
的形式列出。如果该值也是一个集合,那么同样的事情再次发生:集合类型和集合中元素的数量显示在 value
所在的位置,然后从下一行开始,并缩进额外的数量。所以当你看到这个时:
children = Array (101 elements)
[0] = Hash (1 element)
bitstring => Array (100 elements)
key = {Symbol} bitstring
value = Array (100 elements)
[0] = 1
[1] = 0
[2] = 1
[3] = 1
[4] = 1
[5] = 1
你应该看到
children
是一个数组children[0]
是一个哈希children[0][:bitstring]
是一个数组children[0][:bitstring][2]
是:bitstring
数组的第三个元素,它的值是整数1
您知道散列键是 :bitstring
而不是 "bitstring"
的方式是,对于散列,每个元素本身就是 key
和 value
的集合, 所以你看到 bitstring => Array (100 elements)
行下面有 2 行,一行以 key
开头,另一行以 value
开头。 key
列为 {Symbol} bitstring
,告诉您它是符号 :bitstring
。如果键是一个字符串,它只会说 key = "bitstring"
(注意引号)。