0

我觉得我在这里遗漏了一些非常明显的东西。

我将以下哈希放在变量“simple_lable”中。对其调用检查工作正常,但我似乎无法访问任何数值。.to_i 输出为 0,.to_f 输出为 0.0,to_s 输出为空白

puts "**************************"
puts simple_label.inspect
puts simple_label["margin_top"].to_f
puts simple_label["margin_bottom"].to_f
puts simple_label["margin_right"].to_f
puts simple_label["margin_left"].to_f
puts simple_label["paper_size"]
puts "**************************"

结果是

**************************
{"paper_size"=>"LETTER", "top_margin"=>36, "bottom_margin"=>36, "left_margin"=>15.822, "right_margin"=>15.822, "columns"=>3, "rows"=>10, "column_gutter"=>15, "row_gutter"=>0}
0.0
0.0
0.0
0.0
LETTER
**************************

所以价值观就在那里,但我似乎无法正确掌握它们。

有任何想法吗?

非常感谢。

4

1 回答 1

0

问题是您的哈希键不正确。例如,您的哈希有 ,top_margin作为键,但您试图引用 的键margin_top。哈希将返回nil一个不存在的键,并且to_f,to_i给出零,并to_snil哈希值给出空白。

于 2013-08-20T22:11:10.640 回答