Подтвердить что ты не робот

Добавить элемент в ruby ​​array вернуть новый массив

Я хотел бы добавить элемент в массив, но без фактического изменения этого массива, вместо этого он возвращает новый. Другими словами, я хочу избежать:

arr = [1,2]
arr << 3

Что будет возвращено:

[1,2,3]

Изменение обряда. Как я могу избежать этого и создать новый массив?

4b9b3361

Ответ 1

Вы можете легко добавить два массива в Ruby с оператором plus. Итак, просто сделайте массив из своего элемента.

arr = [1, 2]
puts arr + [3]
# => [1, 2, 3]
puts arr
# => [1, 2]

Ответ 2

он также работает, расширяя arr, используя * operator

arr = [1,2]
puts [*arr, 3]
=> [1, 2, 3]