6

我是一名 Java 开发人员,我得到了 Ruby 代码来理解和处理。

我浏览了 tutorialspoint.com 上的 Ruby 教程,但我不知道$_[0]是什么。

它被分配给代码中的一个变量,它绝对不是命令行参数,因为我编写了代码来测试它并且它失败了。那么,谁能说说它的意义是什么?

4

2 回答 2

15

这是神奇的变量之一。

$_保存从标准输入读取的最后一行的值。$_[0]因此,是该字符串的第一个符号。

更多魔法变量见English.rb

# The last line read by <tt>Kernel.gets</tt> or
# <tt>Kernel.readline</tt>. Many string-related functions in the
# +Kernel+ module operate on <tt>$_</tt> by default. The variable is
# local to the current scope. Thread local.
alias $LAST_READ_LINE          $_
于 2012-12-04T09:16:24.417 回答
5

$_- 最后读取的字符串gets

[0]当然是索引到那个字符串。

http://www.rubyist.net/~slagell/ruby/globalvars.html

于 2012-12-04T09:17:53.240 回答