我正在尝试创建一个脚本,通过索引查看每一页的页码,并告诉我该条目所在的书籍章节。下面是我正在做的事情的近似描述:
@chapters = {
1 => "introduction.xhtml",
2..5 => "chapter1.xhtml",
6..10 => "chapter2.xhtml",
11..18 => "chapter3.xhtml",
19..30 => "chapter4.xhtml" }
def find_chapter(number)
@chapters.each do |page_range, chapter_name|
if number === page_range
puts "<a href=\"" + chapter_name + "\page" + number.to_s + "\">" + number.to_s + </a>"
end
end
end
find_chapter(1)
将返回我想要的字符串,但find_chapter(15)
不会返回任何内容。是否无法像这样使用范围作为键值?
hash
方法的东西作为键,由于这在Object中已经定义,因此你几乎必须费尽心思才能找到不能用作键的对象。 - tadman