ruby - 如何使用 puts 显示多个项目?
问题描述
我写了一个带有旅游项目的旅行应用程序,我试图在最后显示订单。
当我使用 puts 时,@order_items
我会{"SevendaySurfSportTour"=>2}
进行两次巡回演出。
我希望它
2 SevendaySurfSportTour
在最后显示。但我不知道如何,任何帮助会很好吗?
class TourOrder
def initialize
@order_items = Hash.new(0)
end
def add_item(name, quantity)
@order_items[name] += quantity
end
def get_items
return @order_items
end
def display
puts "Thank you for coming!"
puts @order_items
end
end
解决方案
下面的代码适合你
class TourOrder
def initialize
@order_items = Hash.new(0)
end
def add_item(name, quantity)
@order_items[name] += quantity
end
def get_items
@order_items
end
def display
puts "Thank you for coming!"
puts items
end
def items
@order_items.collect{ |k, v| "#{v} #{k}"}
end
end
t = TourOrder.new
t.add_item('SevendaySurfSportTour', 2)
t.add_item('Foo', 4)
t.add_item('Bar', 1)
t.display
=> Thank you for coming!
2 SevendaySurfSportTour
4 Foo
1 Bar
推荐阅读
- azure - 当我尝试为 ProfileMFAPhoneNumber 上传 B2C 自定义策略时出现验证错误
- typescript - where(property IN array) 在 typeorm 查询生成器中如何工作?
- c++ - 关于 lambda 表达式中可变关键字的困惑
- python - 使用python为帖子数量添加最大限制
- android - NSSystemClockDidChangeNotification 是否收到有关自动时区更新的通知(无需手动干预。例如,当用户正在旅行时)?
- docker - 在 docker 容器中本地执行 WDIO-Test 会引发错误:@wdio/cli:utils: A service failed in the 'onPrepare' hook
- javascript - JQuery Onclick event.target 返回错误的元素
- csv - 如何使用 Julia CSV 包 rowWriter?
- python - 如果 xpath 在 Python 中找不到 xpath,则删除行
- sql - 从 postgres 窗口函数中排除空值