我需要在Ruby应用程序中表示和使用表。 “表”是指具有列和行的数据结构。我需要能够删除/追加/插入列和行,以及按行/列引用单元格。列标题,列类型等的选项是一个加号。我曾经用Python实现了这样一个数据结构,它最终只有1000行以上,所以我宁愿使用预先存在的解决方案。
是否有提供此功能的内置数据结构或宝石?
答案 0 :(得分:2)
如果您很乐意使用SQL DDL来操作结构,并且SQL查询可以操作和提取数据,那么您可以使用数据库。这不一定意味着客户端/服务器或其他大型架构; SQLite可能非常符合您的要求。
如果您使用SQLite(http://www.sqlite.org/about.html)和sqlite3
gem,您还应该能够使用内存模式运行数据库,如果你想要的只是它允许的数据结构在运行期间:
require 'sqlite3'
db = SQLite3::Database.new ":memory:"
答案 1 :(得分:1)
来自Java我也搜索了类似Guava的Table之类的东西,但是像这样的哈希简单散列怎么样:
table = {
'row 1' => { 'column A' => '1A' , 'column B' => '1B' },
'row 2' => { 'column A' => '2A' , 'column B' => '2B' },
}
您可以像访问它一样访问它:
table['row 1']['column A']