我需要创建一个名为first_and_last的方法。它应该使用一个参数,一个Array,并返回一个只包含参数的第一个和最后一个对象的新数组。
这是我到目前为止所拥有的,但该方法似乎忽略了初始参数,只是创建了一个新数组。
def first_and_last(a)
arr = Array.new
arr = ["a", "b", "c"]
end
答案 0 :(得分:4)
您可以使用values_at()
方法获取数组中的第一个和最后一个元素,如下所示:
def first_and_last(input_array)
input_array.values_at(0,-1)
end
根据您正在寻找的行为,它可能不适用于具有1或0个元素的数组。 You can read more about the method here
答案 1 :(得分:0)
您还可以将.first用于数组中的第一个元素,将.last用于数组中的最后一个元素。
def first_and_last(arr)
[arr.first, arr.last]
end
p first_and_last([1,2,3,4,5,6])
或者....
def first_and_last(arr)
[arr[0], arr[-1]]
end
p first_and_last([1,2,3,4,5,6])