我有一个关于puts #{parse_options.inspect}
的问题。 parse_options
是一个定义为:
def parse_options
options = {}
case ARGV[1]
when "-e"
options[:e] = ARGV[2]
when "-d"
options[:d] = ARGV[2]
end
options
end
它的输出是options
哈希映射的值。我想知道的是inspect
应该如何工作。
"#{ expression }"
是一个表达式替换:将计算表达式的结果放在字符串中。 parse_options
是一个方法调用,它返回options
哈希(返回在 Ruby 中是隐式的)。 {}
构造一个空哈希。 inspect
是hash
上的一种方法,它会转储哈希。
所以它读作如下:在字符串中放置parse_options
返回的哈希上调用inspect
的评估(好吧,它应该是将inspect
发送到哈希的结果,详细信息......
inspect 将哈希作为字符串返回请参阅文档:http://ruby-doc.org/core-1.9.3/Hash.html#method-i-inspect