Основы Ruby: метод Pop в массиве
-
29-10-2019 - |
Вопрос
Я изучаю трудный путь изучения Ruby в Интернете;Я только что закончил 26-е упражнение, которое было «тестом», когда вы исправляли чей-то неработающий код.
Моя проблема возникла из-за использования аргумента с методом pop.Я знаком с основами, но правильный ответ означал изменение аргумента с «-1» на «1», и я не уверен, что именно это означает.
Речь идет о следующей строке:
родовое словоЯ предполагаю, что он выталкивает второй элемент из массива, но мне нужно подтверждение или помощь, в зависимости от того, что подходит.
Решение
Лучшее подтверждение можно найти в документации по Array # pop: http://rubydoc.info/stdlib/core/1.9.3/Array:pop
В соответствии с этим аргумент указывает, сколько элементов, считая с обратной стороны массива, нужно удалить.
Единственное различие между pop()
и pop(1)
заключается в том, что первый возвращает один элемент (удаленный), а второй возвращает массив с одним элементом (опять же, удаленный).
Изменить: я полагаю, что причина, по которой тест использовал -1
, состоит в том, чтобы научить вас разнице между доступом к массиву с помощью #[]
, где -1
означает последний элемент, и такими методами, как pop
, которые ожидают количествоа не позицию, как их аргумент.
Другие советы
Аргумент указывает, сколько элементов вывести.Если вы укажете аргумент, он вернет массив, а не указание аргумента вернет только элемент:
родовое слово