带顺序的hash
今天在看七天七语言的时候,看到ruby 1.9 增加了带顺序的哈希,很有兴趣,搜索了大量资料,也找不到详细的介绍。不知道谁有这方面的应用实例。
我认为这是一个非常有用的数据类型,我现在正在学习Ruby, 这个特性是我在Perl语言中没有找到的。
指的是插入顺序吧,这个看下源代码或者自己写个类满足条件就行了,要什么资料 本帖最后由 Perlvim 于 2012-11-28 22:12 编辑
通常,Hash都采用了一种特别的算法在内部对key进行排序,以便快速搜索,但还有一种赋值数序,就好像数组的赋值一样,在默认输出的时候,就使用赋值顺序进行输出。在根据DTD设计XML代码生成器,或设计一个html书写器的应用中,这种特性将大大简化数据类型和相应算法hash_order = {
key1 => 1,
key2 => 2,
key4 => 4,
key3 => 3,
}
puts hash_order
hash_order.each |key, value|
puts "#{key} => #{value}"
}大家可以用1.8 和 1.9 分别测试一下结果
如果感兴趣,可以用其他语言(perl)测试一下.
就明白这个新增加的特性了 非常有用的数据类型 很有兴趣:oo
页:
[1]