在以下脚本中(对于 Ruby >= 1.9),我只是想将字符串打印到屏幕上,而不是命令行中给出的符号。
这是我的尝试(SymbolsFromArgv.rb)
#!/usr/bin/env ruby
def switch_sybol(symbol)
case symbol
when :add
"Addition !"
when :mul
"Multiplication !"
else
"Unkown symbol #{symbol} !"
end
end
puts switch_sybol( :add )
puts switch_sybol( :mul )
puts switch_sybol( *(ARGV.collect {|elem| elem.to_sym}) )
但是,当我启动时:
$ ./SymbolsFromArgv.rb :mul
我得到以下结果:
Addition !
Multiplication !
Unkown symbol :mul !
那么,为什么我没有得到“乘法!” 最后的结果?
提前致谢。