器-工具:使用Hash方法接收参数构建散列

一、使用Hash方法接收参数构建散列

使用Hash方法并传入参数可以构建散列,传入的参数必须是偶数个,如果传入的参数是奇数个则会报错
按照顺序每两个参数将构成一个键值对,第一个参数作为key,第二个参数作为value。
例如:

h = Hash["a","b"]
=> {"a" => "b"}

m = Hash["a","b",:c,"d"]
=> {"a"=>"b", :c=>"d"}

二、拓展运用

假如这里有一个文件,其中的内容有姓名和国家,但它不是ruby能直接识别的数据结构,我们要把它先转成ruby能识别的数据结构,然后将其中的姓名和国家和相应的人员做成散列形式:

line = "first_name=david;last_name=black;country=usa" #文件的原始内容
record = line.split(/=|;/) #将内容按照=或;进行分割
=> ["first_name", "david","last_name","black","country","usa"]

再将上述的数据进行进一步加工,转成散列形式:

data = []
element = Hash[*record] #使用*将上面获取的数组转成裸列表,作为参数传给Hash方法,从而构建散列
=> {"first_name"=>"david", "last_name"=>"black", "country"=>"usa"}
data.push(element)
=>[{"first_name"=>"david", "last_name"=>"black", "country"=>"usa"}]

三、参考资料

1.《ruby程序员修炼之道》第11章第7.2节

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。