Я хочу удалить первую цифру моего массива и вернуть массив без первого члена
new_array всегда выступает как одно число
new_array
n - это целое число
n
array = (n.to_s).split(//) print array new_array = array.delete_at(0) puts new_array
Удаляет первые n элементов из массива и возвращает остальные элементы в массиве.
a = [41,42,43,45,46] => [41, 42, 43, 45, 46] a.drop 1 => [42, 43, 45, 46]
Вы можете использовать метод массива drop, чтобы удалить n элементов из массива
drop
arr = [1, 2, 3, 4, 5] arr.drop 2 => [3, 4, 5]
ref: https://docs.ruby -lang.org / ru / 2.0.0 / Array.html # method-i-drop
irb(main):001:0> arr = (1..10).to_a => [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] irb(main):002:0> arr.shift => 1 irb(main):003:0> arr => [2, 3, 4, 5, 6, 7, 8, 9, 10]
Я надеюсь, что полезно
Вы можете использовать Целое число # цифры и Объект # нажмите следующим образом:
n = 12345678 position = 3 n.digits.reverse.tap { |ary| ary.delete_at(position) } #=> [1, 2, 3, 5, 6, 7, 8]
position = 0 удалить первую цифру.
position = 0
Потому что delete_at возвращает удаленный элемент. Если вы хотите удалить и получить одновременно первый элемент, вы можете использовать -
delete_at
new_array = array.drop(1)