Arrays 如何获取在数组上运行的方法

Arrays 如何获取在数组上运行的方法,arrays,ruby,methods,Arrays,Ruby,Methods,我一直在用codewars编写代码Katas,我想看看是否可以在我的电脑上运行它们。但是,尽管我可以设计出各种方法,但我无法让它们中的任何一种在Ruby中使用命令提示符运行。例如 def sum_array(arr) if arr.kind_of?(Array) and arr.length > 2 arr.inject(:+) - arr.min - arr.max else 0 end end puts

我一直在用codewars编写代码Katas,我想看看是否可以在我的电脑上运行它们。但是,尽管我可以设计出各种方法,但我无法让它们中的任何一种在Ruby中使用命令提示符运行。例如

def sum_array(arr)      
  if arr.kind_of?(Array) and arr.length > 2       
   arr.inject(:+) - arr.min - arr.max  
  else        
   0  
  end  
end 

puts sum_array = [1, 2, 3, 4]
它没有返回5,而是给出了未修改的数组


对于我来说,获得处理数组的方法的正确方法是什么?

=
标记为“get”

通过编写
sum\u数组=[1,2,3,4]
,您将
[1,2,3,4]
分配给
sum\u数组而不是调用它,这就是
输出1,2,3,4的原因

要使用
[1,2,3,4]
作为参数调用该方法,请执行以下操作:

puts sum_array([1, 2, 3, 4])


不需要最后一行的
=
;实际上,您并没有调用方法
sum\u array
,而是将
[1,2,3,4]
赋值给变量
sum\u array
puts sum_array [1, 2, 3, 4]