В чем разница между [[]] и [] в Ruby? - PullRequest
0 голосов
/ 25 января 2011

наткнулся на этот фрагмент, который делает:

@@dataList[i] = [[0,[]]]

Что делают двойные скобки? Что если я написал:

@@dataList[i] = [0,[]]

.. это будет работать иначе?

Ответы [ 5 ]

7 голосов
/ 25 января 2011

[] - пустой массив.

[[]] - это массив, содержащий пустой массив в качестве отдельного элемента.

[0,[]] - массив, содержащий два элемента.

[[0, []]] - это массив, содержащий один элемент, который оказывается другим массивом.

4 голосов
/ 25 января 2011

Один - это массив, а другой - вложенный массив.

Рассмотрим:

a = [[0,[]]]
b = [0,[]]
a[0] # => [0, []]
b[0] # => 0
a.length # => 1
b.length # => 2
3 голосов
/ 25 января 2011

[] - массив.[[]] - массив в массиве.

CO

2 голосов
/ 25 января 2011

[0,[]] - это массив размера 2, первым элементом которого является число 0, а вторым элементом является пустой массив.

[ [0,[]] ] - это массив размера 1, первым и единственным элементом которого являетсямассив размером 2.

2 голосов
/ 25 января 2011

все это просто в другом массиве.В любом случае, их довольно много в этом коде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...