jazcyk
December 18, 2007, 1:16pm
1
#!/usr/bin/ruby
class Example
def Examplemethod(var1)
puts var1
end
end
Check = Example.new
Check.Examplemethod(“Loftz”)
Hey guys
So this is just calling a method that prints out a name. Im just
wondering can i specify that there may be mulitple parameters going into
this method
for example
Check.Example(“Loftz”,“peter”,“john”,“paul”,“gary”)
and have that method inside the class Example not know how many
parameters are going to be passed into it?
def Examplemethod(?)
Regards
Loftz
jazcyk
December 18, 2007, 1:34pm
2
def Example(*args)
args.each do |arg|
# Process individual argument
end
end
Jason
jazcyk
December 18, 2007, 7:11pm
3
Just to elaborate a little on Jason’s point, for those who are
interested in what this code is doing, it is based on Ruby’s extremely
cool array assignment feature. This is explained here:
http://phrogz.net/ProgrammingRuby/tut_expressions.html#parallelassignment
and applies to parameter assignment in method invocations as well, as
Jason pointed out:
http://phrogz.net/ProgrammingRuby/tut_methods.html#variablelengthargumentlists
That is to say, that variable argument lists in Ruby is actually using
nested assignment, which you can use anywhere, not just in method
definitions.
Best of luck,
-Dan
http://dev.zeraweb.com/