Ruby 编程中的类、访问控制、变量与类的重新开放
1. 类的协同工作
在编程中,我们常常会遇到从多个 CSV 文件读取数据并生成各种简单报告的需求。为了实现这个目标,我们可以设计不同的类来完成不同的任务。
首先,我们有一个 BookInStock 类,它用于表示一本书的数据:
class BookInStock
attr_reader :isbn, :price
def initialize(isbn, price)
@isbn = isbn
@price = Float(price)
end
def price_in_cents
(price * 100).round
end
end
这个类包含了书的 ISBN 和价格信息,并且提供了一个 price_in_cents 方法,用于将价格转换为美分,避免浮点数运算误差。
接下来,我们需要一个类来读取 CSV 文件并处理数据,这里我们创建了 CsvReader 类:
require "csv"
require_relative "book_in_stock"
class CsvReader
def initialize
@books_in_stock = []
end
def read_in_csv_data(csv_file_name)
CSV.foreach(csv_file
超级会员免费看
订阅专栏 解锁全文
39

被折叠的 条评论
为什么被折叠?



